Extracted from Pike v7.8 release 866 at 2016-11-06.
pike.ida.liu.se
[Top]
Parser
Parser.LR
Parser.LR.Parser

Class Parser.LR.Parser

Description

This object implements an LALR(1) parser and compiler.

Normal use of this object would be:

 set_error_handler
 {add_rule, set_priority, set_associativity}*
 set_symbol_to_string
 compile
 {parse}*
 


Variable grammar

mapping(int:array(Rule)) Parser.LR.Parser.grammar

Description

The grammar itself.


Variable start_state

Kernel Parser.LR.Parser.start_state

Description

The initial LR0 state.


Variable lr_error

int Parser.LR.Parser.lr_error

Description

Error code


Variable known_states

mapping(string:Kernel) Parser.LR.Parser.known_states

Description

LR0 states that are already known to the compiler.


Variable error_handler

function(SeverityLevel:void) Parser.LR.Parser.error_handler

Description

Compile error and warning handler.


Variable s_q

StateQueue Parser.LR.Parser.s_q

Description

Contains all states used. In the queue section are the states that remain to be compiled.