module type INCREMENTAL_ENGINE = sig .. end
type 
type 
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
type [ `Legacy | `Simplified ] 
val resume : ?strategy:strategy ->
       'a checkpoint ->
       'a checkpoint
type unit ->
       token *
       CamlinternalMenhirLib.IncrementalEngine.position *
       CamlinternalMenhirLib.IncrementalEngine.position 
val lexer_lexbuf_to_supplier : (Lexing.lexbuf ->
        token) ->
       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 ->
       CamlinternalMenhirLib.IncrementalEngine.position -> bool
type 'a lr1state 
val number : 'a lr1state -> int
val production_index : production -> int
val find_production : int -> production
type 
type 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