`sig
type 'a terminal
type 'a nonterminal
type 'a symbol =
T : 'a terminal -> 'a symbol
| N : 'a nonterminal -> 'a symbol
type xsymbol = X : 'a symbol -> xsymbol
type 'a lr1state
type production
type item =
CamlinternalMenhirLib.IncrementalEngine.INSPECTION.production * int
val compare_terminals : 'a terminal -> 'b terminal -> int
val compare_nonterminals : 'a nonterminal -> 'b nonterminal -> int
val compare_symbols : xsymbol -> xsymbol -> int
val compare_productions :
CamlinternalMenhirLib.IncrementalEngine.INSPECTION.production ->
CamlinternalMenhirLib.IncrementalEngine.INSPECTION.production -> int
val compare_items :
CamlinternalMenhirLib.IncrementalEngine.INSPECTION.item ->
CamlinternalMenhirLib.IncrementalEngine.INSPECTION.item -> int
val incoming_symbol :
'a CamlinternalMenhirLib.IncrementalEngine.INSPECTION.lr1state ->
'a symbol
val items :
'a CamlinternalMenhirLib.IncrementalEngine.INSPECTION.lr1state ->
CamlinternalMenhirLib.IncrementalEngine.INSPECTION.item list
val lhs :
CamlinternalMenhirLib.IncrementalEngine.INSPECTION.production -> xsymbol
val rhs :
CamlinternalMenhirLib.IncrementalEngine.INSPECTION.production ->
xsymbol list
val nullable : 'a nonterminal -> bool
val first : 'a nonterminal -> 'b terminal -> bool
val xfirst : xsymbol -> 'a terminal -> bool
val foreach_terminal : (xsymbol -> 'a -> 'a) -> 'a -> 'a
val foreach_terminal_but_error : (xsymbol -> 'a -> 'a) -> 'a -> 'a
type 'a env
val feed :
'a symbol ->
CamlinternalMenhirLib.IncrementalEngine.position ->
'a ->
CamlinternalMenhirLib.IncrementalEngine.position ->
'b CamlinternalMenhirLib.IncrementalEngine.INSPECTION.env ->
'b CamlinternalMenhirLib.IncrementalEngine.INSPECTION.env
end`