parser generator erstellen



  • hi leute, moin matt 😃

    folgendes, ich versuch zurzeit ein etwas anspruchsvolles tool zusammenzucoden, es geht darum die .cpp und .h files eines software projekts nach bestimmten variablen zu durchsuchen ( wo definiert, wo aufgerufen etc.). dazu muss ich nen parser erstellen der den C syntax erkennen kann, die sourcen die ich analysieren will sind in C geschrieben. zum entwickeln des tools benutze ich visual c++ (don't blame me, kundenanforderung 😉 ).

    jetzt meine frage, hat jemand von euch erfahrungen mit parsergeneratoren à la antlr, lex&yacc ? ich such wennmöglich ein tool bei dem ich mittels einer beschreibungssprache eine c++ parserklasse mit zugehörigem headerfile/library erstellen kann.

    häng zur zeit eher in der luft, und wäre dankbar für jede hilfe.

    merci
    misan

    p.s. hey iman, hab doch gesagt ich stürm deine foren 🕶



  • Hi,

    dann stürme mal, aber dann besser in "Rund um Programmierung", da passt das besser. 😉



  • Hi!
    Kauf dir am besten ein Buch über Compilerbau. Compiler/Scanner/Parser selbst zu proggen ist nämlich gar nicht mal so schwer.

    www.amazon.de da steht auch in einigen drinne wie man Lex und Yacc benutzt.

    Gruss,
    code_pilot :p



  • Hi

    Ich hab mal nen Parser mit bison gebaut.
    Der ist ziehmlich gut dokumentiert und auch für Windows erhältlich.
    Auch flex gibt es für Windows(wenn du cygwin hast).

    Genaueres kann ich dir leider nicht sagen.

    Bison generiert den parser code in c. Kannst ja dann die Funktionen in ne Wrapper Klasse bauen.

    Für den lexical scanner würde ich dir flex empfehlen. Der Arbeit gut mit bison zusammen.

    Bison benutzt ne kontext free grammer für die definition der parse rules.
    Bison erstellt dir dann ein Headerfile und ein sourcefile

    Für weiters musst du dir halt die Dokus anschauen.


Anmelden zum Antworten