Flexc ++ ist ein Scanner- Generator für C ++ und ist sehr ähnlich zu biegen und beugen ++ durch Vern Paxson geschrieben. Das Ziel war, ein ähnliches Programm zu schaffen, sondern vollständig umsetzen in C ++. Die meisten flex / flex ++ Grammatiken sollten flexc nutzbar ++, mit geringfügigen Anpassungen.
Die Unterschiede mit Flex / flex ++
Obwohl flexc ++ versucht, so viel kompatibler mit Flex wie möglich ist, gibt es einige Unterschiede.
-Obsolete Symbole
Alle Erklärungen und DEFINE Symbole oben nicht aufgeführt, sondern in flex ++ definiert sind veraltet mit flexc ++. Insbesondere gibt es keine Kopf% {...}% Abschnitt mehr. Auch alle DEFINE Symbole auf Elementfunktionen verwandt sind mittlerweile veraltet. Es besteht keine Notwendigkeit für diese Symbole nicht mehr, da sie einfach in den Klassenheaderdatei an anderer Stelle erklärt und definiert werden.
-Code Blöcke
Flexc ++ nicht unterstützt Code-Blöcke, mit Ausnahme von mehreren Leitungen Aktionen. Code zuvor im Code-Blöcke platziert kann nun im Verfahren aufgestellt werden.
-User Code
Bezogen auf die Nummer 2.2, ist flexc ++ keine Unterstützung für eine letzte Abschnitt der Eingabedatei für Benutzercode.
-Comments
Flexc ++ ist ein bisschen flexibler unter Kommentare, für weitere Informationen siehe Abschnitt 4.3
Was ist neu in dieser Pressemitteilung:
- Bereinigung von Debug-Meldungen in lex.cc
- Überprüfen Sie, ob die Annahme Zustand entspricht Lookahead. Behebt den Bug von Selwin van Dijk wiesen.
- verwenden, um icmake flexc bauen ++ und führen Testsuite. Ccbuild wird nur verwendet, um die Klassendatei zu aktualisieren.
- Unterstützung hinzugefügt für Betreiber {+} und {-}. In Muster
- Generalsanierung der Schaltstrom: er nun eine StreamInfo Klasse mit (extra) Strominformationen, konfigurierbar% Option streaminfoclassname = & quot; ... & quot ;. In der Dokumentation für weitere Informationen.
Anforderungen :
- icmake
Kommentare nicht gefunden