Rekursive Struktur mit Spirit parsen?



  • Hi,
    ich habe eine Frage zu Boost-Spirit. Und zwar versuche ich die ganze Zeit einen Parser für eine rekursive Struktur zu schreiben. Die Daten sehen etwa wie folgt aus...

    Bruch = '{' >> Term >> '||' >> Term '}'
    Term = *(String | Bruch)

    Also in Worten: Ein Bruch besteht aus 2 Termen, die wiederrum aus beliebig vielen aneinanderhängenden Brüchen und Strings bestehen.

    Das ganze soll nachher eine Möglichkeit werden mathematische Formeln darzustellen (etwa wie Latex nur nicht so umfangreich). Mein Problem ist nun, wie ich die Daten in die Struktur füllen soll. Das Kapitel über semantische Aktionen habe ich gelesen, aber es hilft mir nicht wirlich bei meinem Problem. Ich wüsste z.B. wie ich einen Vector mit Werten fülle, aber mit der rekursiven Datenstruktur habe ich so meine Probleme. Hat jemand so etwas vielleicht schon mal gemacht und kann mir ein kleines Beispiel zeigen?

    Viele Grüße,
    W-Man


Anmelden zum Antworten