This modules implements a deterministic top-down parser based on a pre-computed Finite State Machine (FSM).

The FSM is generated by Parse::FSM, by reading a BNF-type grammar file and generating a run-time module that includes the state tables. The module also include the run-time parsing routine that follows the state tables to obtain a parse of the input.

This module is not intended to be used stand alone. It is used as a base class by the modules generated by Parse::FSM.

Get/set the parser input lexer iterator. The iterator is a code reference of a function that returns the next token to be parsed as an array ref, with token type and token value [$type, $value]. It returns undef on end of input. E.g. for a simple expression lexer: