Codeerzeugung |
Top Previous Next |
Die Professional-Version des TextTransformers ist dadurch ausgezeichnet, dass es hier möglich ist, den Quellcode für eine C++-Klasse des gebildeten Parsers zu exportieren. Der TextTransformers erzeugt sämtlichen Code, der für ein eigenständiges ausführbares Programm erforderlich ist. Ebenso lässt sich der generierte Code als Teil in größere Anwendungen einbinden.
Die Verwendung des generierten Codes hat drei Vorteile gegenüber der Verwendung eines Projekts im TextTransformer selbst:
In der Einleitung wurde dargestellt, dass eine Produktion als Spezifikation zur Erzeugung eine Funktion angesehen werden kann. Die Codeerzeugung ist nun die Anwendung dieser Spezifikation, d.h. für jede Produktion wird eine entsprechende Funktion erzeugt.
Der C++-Code für die semantischen Aktionen wird dabei aus den entsprechenden Abschnitten der einzelnen Produktionen entsprechend der Projekteinstellung durch bloßes Kopieren oder durch Rekonstruktion übernommen. Der C++-Code für den eigentlichen Parser wird von TETRA an gekennzeichneten Positionen in Quellcode-Schablonen geschrieben.
Zur Kompilierung eines von TETRA erzeugten Parsers ist neben der Bibliothek für reguläre Ausdrücke von Dr. Maddock noch einiger unterstützender C++-Quellcode erforderlich.
|
Diese Seite gehört zur TextTransformer Dokumentation |
Home Inhalt English |