Zirkularitätstest |
Top Previous Next |
Grammatiktests > Zirkularitätstest
Kein Nonterminal darf direkt oder indirekt von sich selbst abgeleitet sein. Die folgende Produktion wäre ein Beispiel für eine Regel, die dieses Prinzip verletzt:
Circular1 ::= Circular2 | "T" Circular2 ::= Circular1 | "T"
Das Parsen dieser Regeln ergibt die Fehlermeldungen:
Zirkuläre Ableitung: "Circular1" . "Circular2" Zirkuläre Ableitung: "Circular2" . "Circular1"
Anmerkung:
Folgende Regeln ergeben hingegen die Fehlermeldungen, dass sie nicht terminalisierbar seien.
Circular1 ::= Circular2 Circular2 ::= Circular1
Der Terminalisierbarkeitstest wird vor dem auf Zirkularität ausgeführt und beim Auffinden einer Zirkularität wird die weitere Analyse abgebrochen.
|
Diese Seite gehört zur TextTransformer Dokumentation |
Home Inhalt English |