Execute a look-ahead step-by-step

Top  Previous  Next

User interface > Debugging and executing > Execute a look-ahead step-by-step

 

Productions can be executed on a trial basis. In dependence of the success the same production is executed or another branch is chosen. Such a look-ahead also can be tested step-by-step.

This is possible in arbitrary staggering.  I.e. the success of a look-ahead can depend on further look-ahead's which are carried out within the first one.

 

 

LALevel        Level of look-ahead

 

The level of the look-ahead is shown on a little field within the tool bar. An empty field or a zero means that the parser isn't within a look-ahead but in the main stream.

 

 

StepInLA        Into the look-ahead (Ctrl + F7)

 

If the parser is at the beginning of an IF or a WHILE structure like shown below,

 

StepInLA_example

 

you can step into the corresponding look-ahead by this button. At other positions the button works just like the button  for a single step within a look-ahead level. If the expected token doesn't belong to the first set of the look-ahead-production, there is no change of the level too.

 

Different highlighting of the symbols shows, that

 

LAForward it will be testet next

 

LARewindTrue it has been testet successfully

 

LARewindFalse the test failed.

 

 

 

StepOutLA        Out of the look-ahead (Ctrl + F8)

 

You can leave a look-ahead by this button. All remaining steps within the current level are executed at once and the parser stops at the next higher level.

 

Remark: you can use the other buttons and functions of the debugger the same way within a level of a look-ahead like at the level of the main parser.

 

 



This page belongs to the TextTransformer Documentation

Home  Content  German