include MenhirLib.IncrementalEngine.INCREMENTAL_ENGINE with type MenhirInterpreter.token = tokenval offer : 'a checkpoint ‑> (token * MenhirLib.IncrementalEngine.position * MenhirLib.IncrementalEngine.position) ‑> 'a checkpointval resume : 'a checkpoint ‑> 'a checkpointtype supplier = unit ‑> token * MenhirLib.IncrementalEngine.position * MenhirLib.IncrementalEngine.positionval loop : supplier ‑> 'a checkpoint ‑> 'aval loop_handle : ('a ‑> 'answer) ‑> ('a checkpoint ‑> 'answer) ‑> supplier ‑> 'a checkpoint ‑> 'answerval loop_handle_undo : ('a ‑> 'answer) ‑> ('a checkpoint ‑> 'a checkpoint ‑> 'answer) ‑> supplier ‑> 'a checkpoint ‑> 'answerval shifts : 'a checkpoint ‑> 'a env optionval acceptable : 'a checkpoint ‑> token ‑> MenhirLib.IncrementalEngine.position ‑> boolval number : 'a lr1state ‑> intval production_index : production ‑> intval find_production : int ‑> productionval current_state_number : 'a env ‑> intval positions : 'a env ‑> MenhirLib.IncrementalEngine.position * MenhirLib.IncrementalEngine.positionval env_has_default_reduction : 'a env ‑> boolval state_has_default_reduction : 'a lr1state ‑> boolval force_reduction : production ‑> 'a env ‑> 'a envval input_needed : 'a env ‑> 'a checkpoint