BandM metatools API doc

BandM meta_tools for compiler construction and efficient programming.

The BandM meta_tools toolkit employs advanced methods of meta-programming, source code synthesis, non-invasive pattern matching and much more. It is based on standard languages like Java, XML, XSLT. It offers in most areas strictly typed implementations.

For an introduction and details please refer also to the user documentation.

Packages
Package
Description
Own bandm metatools annotations.
CLI tool to construct the initial skeleton of files and folders required by metatools and gnu make.
D2d allows to write valid XML documents directly in the creative flow of authoring, with minimum typographic noise.
 
This is a package of auxiliary classes for the d2d version 2.0 implementation.
Umod main model class: This is the internal model for the d2d text type definitions.
Parser for the d2d module definition language (.ddf), driven by xantlr and tdom.
 
Postprocessors for sematic modification of d2d parsing results.
Umod main model class: This is a model for the results of d2d text parsing.
Document type definitions in various formats, plus utilities.
Utilities for postscript and pdf processing.
Meaning: Data model for documents conforming to xhtml 1.0 strict.
SAT solver according to Davis-Putnam-Logemann-Loveland.
Model for w3c XML DTDs, with preserved syntax.
Canonical model of a W3C DTD with evaluated semantics; plus utility applications.
Parameter expander to instantiate Java source text templates with primitive or object types.
Text layout and pretty printing, see the user documentation.
An implementation-agnostic API for pretty-printing format objects.
Tools to debug Format expressions
Generate format generating code (or formats dynamically) controlled by the format description language.
Contains a few auxiliary methods which allow the compiler to generate a strictly functional code.
Utility functions for Swing GUI interaction and for graphics: drawing and coordinate calculation.
Utility functions for GUI user interaction, using MuLi internationalization.
Mathematical graph tools.
Distribute applications made with metatools.
Evaluation, statistics and renderings of bandm lab log format.
Meaning: Created from d2d definition module lablog$expanded at 2024-11-24_12h01m09.
Toolkit for the dynamic construction of lexical analyzers.
 
 
Abstract Syntax of LLJava, representing the byte code instructions, the objects which contain byte code, and the attributes specific to byte code classes.
 
 
 
Models positions in documents and across documents.
Messages and positions in documents, see the user documentation.
 
 
 
 
Support *MU*lti *LI*ngual user interfaces by advanced translation look-up, incremental deserialization, etc.
Meaning: Source format for multi lingual support.
Types for fundamental mathematical structures, plus libraries of respective constants and operators.
Command line parser and graphical user input generated from one abstract description of programming options, incl data types and multi-lingual descriptions.
Meaning: Source format for the Option compiler, for command line parsing, GUI input, generation of documentation, etc.
Runtime library for generated option processing code: building blocks for parsing and GUI.
A modular implementation of pattern matching on arbitrary objects.
 
Framework for simple recursive-descend parsers.
Generates typed models of XML documents, see meta-tools TDOM user documentation.
Contains base and auxiliary classes for code generated by tdom.
 
Abstract syntax of the tpath language, realized as a umod model.
A DocumentClient implementation for W3C Dom.
 
Infrastructure for evaluating tpath expressions.
 
Type checking for tpath expressions.
Compiler for data models, from a concise mathematical oriented language into Java.
umod model description languaga parser code, AUTOMATICALLY GENERATED from "umod.g".
Runtime classes for the model code generated by the umod-Compiler, esp for data integrity de/serialization, visualzation, visitors and rewriters.
Utility classes for Java and JVM runtime objects and bytecode.
Utility classes for file handling and IO.
Closes the gaps left by java.util.function and extends it by n-ary functions.
Utility classes for http handling.
Utility classes for types defined in the java runtime library java.util.
Utility classes for XML.
Ubiquitously needed auxiliary classes which need the eu.bandm.tools.option package.
Versatile export of ASTs recognized by antlr as SAX events, cf user documentation.
Runtime classes for the xantlr parser.
Glueing code supporting different standard use cases of tdom, xantlr and both.
txsl = typed xslt 1.0 interpreter with "fragmented validation".