Make.I
include IncrementalEngine.INCREMENTAL_ENGINE
val offer :
'a checkpoint ->
(token * IncrementalEngine.position * IncrementalEngine.position) ->
'a checkpoint
val resume : ?strategy:strategy -> 'a checkpoint -> 'a checkpoint
type supplier =
unit ->
token * IncrementalEngine.position * IncrementalEngine.position
val lexer_lexbuf_to_supplier :
(Stdlib.Lexing.lexbuf -> token) ->
Stdlib.Lexing.lexbuf ->
supplier
val loop : ?strategy:strategy -> supplier -> 'a checkpoint -> 'a
val loop_handle :
('a -> 'answer) ->
('a checkpoint -> 'answer) ->
supplier ->
'a checkpoint ->
'answer
val loop_handle_undo :
('a -> 'answer) ->
('a checkpoint -> 'a checkpoint -> 'answer) ->
supplier ->
'a checkpoint ->
'answer
val shifts : 'a checkpoint -> 'a env option
val acceptable : 'a checkpoint -> token -> IncrementalEngine.position -> bool
val number : _ lr1state -> int
val production_index : production -> int
val find_production : int -> production
type element =
| Element : 'a lr1state
* 'a
* IncrementalEngine.position
* IncrementalEngine.position -> element
type stack = element General.stream
val current_state_number : 'a env -> int
val positions :
'a env ->
IncrementalEngine.position * IncrementalEngine.position
val env_has_default_reduction : 'a env -> bool
val state_has_default_reduction : _ lr1state -> bool
val force_reduction : production -> 'a env -> 'a env
val input_needed : 'a env -> 'a checkpoint
include IncrementalEngine.INSPECTION
with type 'a lr1state := 'a lr1state
with type production := production
with type 'a env := 'a env
include IncrementalEngine.SYMBOLS
type item = production * int
val compare_nonterminals : _ nonterminal -> _ nonterminal -> int
val compare_productions : production -> production -> int
val lhs : production -> xsymbol
val rhs : production -> xsymbol list
val nullable : _ nonterminal -> bool
val first : _ nonterminal -> _ terminal -> bool
val foreach_terminal : (xsymbol -> 'a -> 'a) -> 'a -> 'a
val foreach_terminal_but_error : (xsymbol -> 'a -> 'a) -> 'a -> 'a
val feed :
'a symbol ->
IncrementalEngine.position ->
'a ->
IncrementalEngine.position ->
'b env ->
'b env