Next: , Previous: , Up: Value methods   [Contents][Index]


24.8 Valuator step types

Accessor macro: Marpa_Step_Type MARPA_STEP_RULE

MARPA_STEP_RULE is the step type for for a rule node. The application should perform its equivalent of rule execution.

Accessor macro: Marpa_Step_Type MARPA_STEP_TOKEN

MARPA_STEP_TOKEN is the step type for a token node. The application’s equivalent of the evaluation of the semantics of a non-null token should be performed.

Accessor macro: Marpa_Step_Type MARPA_STEP_NULLING_SYMBOL

MARPA_STEP_NULLING_SYMBOL is the step type for a nulled node. The application’s equivalent of the evaluation of the semantics of a nulled token should be performed.

The use of the word “nulling” in the step type name MARPA_STEP_NULLING_SYMBOL is problematic. While the node must be zero-length (nulled), the node’s symbol need not be nulling: it may be a proper nullable. The name of the step type would more correctly be “MARPA_STEP_NULLED_SYMBOL”, but it is left as is for backward compatibility. See Nulling versus nulled.

Accessor macro: Marpa_Step_Type MARPA_STEP_INACTIVE

When this is the step type, the valuator has gone through all of its steps and is now inactive. The value of the parse tree will be in stack location 0. Because of optimizations, it is possible for valuator to immediately became inactive — MARPA_STEP_INACTIVE could be both the first and last step. Once a valuator becomes inactive, it stays inactive.

Accessor macro: Marpa_Step_Type MARPA_STEP_INITIAL

The valuator is new and has yet to go through any steps.

Accessor macro: Marpa_Step_Type MARPA_STEP_INTERNAL1
Accessor macro: Marpa_Step_Type MARPA_STEP_INTERNAL2
Accessor macro: Marpa_Step_Type MARPA_STEP_TRACE

These step types are reserved for internal purposes.


Next: , Previous: , Up: Value methods   [Contents][Index]