Module InspectionTableInterpreter.Make

Parameters

module IT : InspectionTableFormat.TABLES with type 'a lr1state = int
module ET : EngineTypes.TABLE with type terminal = int and type nonterminal = int and type semantic_value = Stdlib.Obj.t
module E : sig ... end

Signature

include IncrementalEngine.SYMBOLS with type 'a terminal := 'a IT.terminal with type 'a nonterminal := 'a IT.nonterminal
type 'a symbol =
  1. | T : 'a IT.terminal -> 'a symbol
  2. | N : 'a IT.nonterminal -> 'a symbol
type xsymbol =
  1. | X : 'a symbol -> xsymbol
type item = int * int
val compare_terminals : _ IT.terminal -> _ IT.terminal -> int
val compare_nonterminals : _ IT.nonterminal -> _ IT.nonterminal -> int
val compare_symbols : xsymbol -> xsymbol -> int
val compare_productions : int -> int -> int
val compare_items : item -> item -> int
val incoming_symbol : 'a IT.lr1state -> 'a symbol
val items : _ IT.lr1state -> item list
val lhs : int -> xsymbol
val rhs : int -> xsymbol list
val nullable : _ IT.nonterminal -> bool
val first : _ IT.nonterminal -> _ IT.terminal -> bool
val xfirst : xsymbol -> _ IT.terminal -> bool
val foreach_terminal : (xsymbol -> 'a -> 'a) -> 'a -> 'a
val foreach_terminal_but_error : (xsymbol -> 'a -> 'a) -> 'a -> 'a