Einschlüsse (Kommentare)

Top  Previous  Next

Bedienung > Hauptmenü > Menü: Einstellungen > Projekteinstellungen > Einschlüsse (Kommentare)

 

Hier kann aus einer Auswahlbox eine Produktion zum Parsen von Einschlüssen - meist Kommentaren - gewählt werden. Wenn diese Produktion in den globalen Projektoptionen gesetzt ist, dann ist sie für alle Produktionen des Projekts gültig, d.h.auch für die gewählte Produktion selbst; so werden z.B. verschachtelte Kommentare korrekt geparst.

 

Beispiel:

 

CppComment ::= "/*" ( NUMBER | ID | "." | "-" )* "*/"

 

Wenn CppComment in den Projektoptionen zum Parsen von Einschlüssen gesetzt ist, wird auch folgender Kommentar geparst:

 

/* 1. Kommentar-Ebene /* 2. Kommentar-Ebene */ 1. Kommentar-Ebene */

 

Leider funktioniert folgende Produktion nicht, wenn Kommentare verschachtelt sind:

 

CppComment ::= "/*" ( SKIP | STRING )* "*/"

// ! diese Definition ist für verschachtelte Kommentare nicht geeignet

 

Der durch SKIP erkannte Text wäre:

 

1. Kommentar-Ebene /* 2. Kommentar-Ebene

 

Der Beginn des inneren Kommentars würde also übersprungen und das Ende des inneren Kommentars als Ende des gesamten Einschlusses interpretiert.

 

Ist die Verschachtelung nicht gewünscht, so kann in den lokalen Optionen von CppComment das Leerfeld für die Einschlüsse gesetzt werden. Ebenso kann für jede andere Produktion individuell eingestellt werden, welche Einschlüsse in ihnen getestet werden.

 



Diese Seite gehört zur TextTransformer Dokumentation

Home  Inhalt  English