Gibt es einen C++ - Grammatik-Datei für ANTLR?
Gibt es bestehende C++ - Grammatik-Dateien für ANTLR?
Ich bin auf der Suche nach lex, nicht analysieren einige C++ - Quellcode-Dateien.
Ist, habe ich mich auf die ANTLR-Grammatik-Seite und es sieht aus wie es ist ein börsennotiertes erstellt von Sun Microsystems hier.
Jedoch scheint es sich um einen generierten Parser.
Kann jemand mir eine C++ ANTLR-lexer-oder Grammatik-Datei?
Du musst angemeldet sein, um einen Kommentar abzugeben.
C++ - Parser sind hart zu bauen.
Kann ich nicht sprechen, die Erfahrung mit über mit ANTLR-C++ - Grammatiken. Hier bespreche ich was ich gelernt habe, durch das Lesen der Anmerkungen zu den die eine die ich gesehen habe auf der ANTLR-Website; im wesentlichen, der Autor produziert eine unvollständige Grammatik. Und das war nur für C++98. Es hat eine Weile, da ich sah; es mag andere geben.
Unserer DMS Software Reengineering Toolkit hat eine robuste C++ front-end.
Der lexer übernimmt die gesamten Reste für ANSI, GCC3, MS Visual Studio 2008, inklusive groß-precision-floating-point-zahlen, etc.
[EDIT: 12/2011. Jetzt mit C++11 und die OpenMP-Direktiven]
[EDIT: 3/2015: Jetzt mit C++14 in beiden GCC und MS-Varianten.
Sehen Sie einige der parse-Bäume, die hier auf SO]
Dass es "nur" ein parser ist eigentlich nicht sehr nützlich. Above and beyond "genau analysieren", unsere front-end bauen ASTs, erstellen genaue symbol-Tabellen (für C++, das ist extrem schwer zu tun), führen Sie die Funktion-local-flow-Analyse und ermöglichen Ihnen die Durchführung von Programm-Transformationen, etc. Sehen Leben Nach Dem Parsen.
[EDIT: 5/2019: Jetzt mit C++17 in ANSI, GCC und MS-Varianten. Abgeschlossen name und Typ Auflösung across compilation units. Automatisieren großen Maßstab Gottes-Klasse refactoring/splitten über die Systeme der 3000-compilation-units.]