module type INCREMENTAL_ENGINE = sig
.. end
type
token
type
production
type 'a
env
type 'a
checkpoint = private
| |
InputNeeded of 'a env |
| |
Shifting of 'a env * 'a env * bool |
| |
AboutToReduce of 'a env * production |
| |
HandlingError of 'a env |
| |
Accepted of 'a |
| |
Rejected |
val offer : 'a checkpoint ->
token *
CamlinternalMenhirLib.IncrementalEngine.position *
CamlinternalMenhirLib.IncrementalEngine.position ->
'a checkpoint
val resume : 'a checkpoint ->
'a checkpoint
type
supplier = unit ->
token *
CamlinternalMenhirLib.IncrementalEngine.position *
CamlinternalMenhirLib.IncrementalEngine.position
val lexer_lexbuf_to_supplier : (Lexing.lexbuf ->
token) ->
Lexing.lexbuf ->
supplier
val loop : 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 ->
CamlinternalMenhirLib.IncrementalEngine.position -> bool
type 'a
lr1state
val number : 'a lr1state -> int
val production_index : production -> int
val find_production : int -> production
type
element =
type
stack = element
CamlinternalMenhirLib.General.stream
val stack : 'a env ->
stack
val top : 'a env ->
element option
val pop_many : int ->
'a env ->
'a env option
val get : int ->
'a env ->
element option
val current_state_number : 'a env -> int
val equal : 'a env ->
'a env -> bool
val positions : 'a env ->
CamlinternalMenhirLib.IncrementalEngine.position *
CamlinternalMenhirLib.IncrementalEngine.position
val env_has_default_reduction : 'a env -> bool
val state_has_default_reduction : 'a lr1state ->
bool
val pop : 'a env ->
'a env option
val force_reduction : production ->
'a env ->
'a env
val input_needed : 'a env ->
'a checkpoint