schrittweise Ausführung des Programms

Top  Previous  Next

Bedienung > Debuggen und Ausführen > schrittweise Ausführung des Programms

 

Die schrittweise Ausführung eines Programms dient dazu Programmzeilen zu lokalisieren an denen eventuelle Fehler (Bugs) auftreten.

Im TextTransformer können die Erkennungen und Aktionen der Knoten des Syntaxbaums einzeln ausgeführt werden. Derjenige Knoten der als nächstes auszuführen ist, wird im Baumdiagramm gelb markiert.

Bei jedem Schritt wird getestet, ob der Text, der dem bisher analysierten Text nachfolgt zu einem der Token passt, die die Anfängermenge des jeweiligen Knotens ausmachen. Ist dies nicht der Fall, ist das Parsen des Textes gescheitert und wird mit einer Fehlermeldung abgebrochen. Wird ein passendes Token gefunden, so wird zum nächsten Knoten fortgeschritten.

 

Welches der nächste Knoten ist, hängt von der Art ab, wie fortgeschritten wird.

 

StepToToken        Nächstes Token (F6)

 

Die Regeln werden bis zu dem nächsten Terminalknoten ausgeführt. Vom aktuellen Knoten des Syntaxbaums bis zu dem des Tokens können mehrere Verzweigungen liegen sowie Knoten, die semantische Aktionen repräsentieren. Die semantischen Aktionen werden dabei sämtlich ausgeführt, falls sie aktiviert sind.

 

StepToTokenBack        Zum vorherigen Token zurück (UMSCHALT + F6)

 

Es wird virtuell zum vorherigen Token zurückgegangen. Semantische Aktionen werden hierbei nicht rückgängig gemacht. Beim erneuten Voranschreiten werden solange keine semantischen Aktionen ausgeführt, bis die Position überschritten wird, die bereits einmal erreicht war.

 

 

stepinto        Einzelner Knoten (F7)

 

Die Unterknoten einer Regel, Option, Wiederholung oder Alternative werden jeweils einzeln ausgeführt. Je nach Position des aktuellen, gelb markierten Knotens gibt es folgende Möglichkeiten:

 

a) der aktuelle Knoten repräsentiert eine Verzweigung (Option, Wiederholung oder Alternativen), dann wird in den ersten Unterknoten der Verzweigung geschritten.

 

b) der aktuelle Knoten bezeichnet den Aufruf einer Produktion, dann wird zu deren Darstellung im Baumdiagramm gesprungen.

 

c) der aktuelle Knoten stellt ein Terminalsymbol dar, ist also ein Blatt der Baumstruktur, dann führt die Ausführung einer einzelnen Anweisung auf den nachfolgenden (unterhalb dargestellten) Knoten, falls es einen solchen gibt. Steht der terminale Knoten am Ende einer Kette so führt die Ausführung einer einzelnen Anweisung auf den Knoten der dem Knoten nachfolgt, der der Kette übergeordnet ist.

 

 

StepIntoBack        Einzelner Knoten zurück (UMSCHALT + F7)

 

Es wird ein Schritt zurückgegangen. Semantische Aktionen werden hierbei nicht rückgängig gemacht. Beim erneuten Voranschreiten werden solange keine semantischen Aktionen ausgeführt, bis die Position überschritten wird, die bereits einmal erreicht war.

 

 

stepover        Gesamte Verzweigung (F8)

 

Die Ausführung einer gesamten Verzweigung unterscheidet sich von der eines einzelnen Knotens in Punkt a) und b). Über die jeweiligen Unterknoten wird hinweg geschritten zum Knoten, der der Verzweigung nachfolgt; d.h. die Unterknoten werden in einem Zug ausgeführt.

 

 



Diese Seite gehört zur TextTransformer Dokumentation

Home  Inhalt  English