package menhirLib

  1. Overview
  2. Docs

Module type IncrementalEngine.EVERYTHINGSource

include INCREMENTAL_ENGINE
Sourcetype token
Sourcetype production
Sourcetype 'a env
Sourcetype 'a checkpoint = private
  1. | InputNeeded of 'a env
  2. | Shifting of 'a env * 'a env * bool
  3. | AboutToReduce of 'a env * production
  4. | HandlingError of 'a env
  5. | Accepted of 'a
  6. | Rejected
Sourceval offer : 'a checkpoint -> (token * position * position) -> 'a checkpoint
Sourcetype strategy = [
  1. | `Legacy
  2. | `Simplified
]
Sourceval resume : ?strategy:strategy -> 'a checkpoint -> 'a checkpoint
Sourcetype supplier = unit -> token * position * position
Sourceval lexer_lexbuf_to_supplier : (Lexing.lexbuf -> token) -> Lexing.lexbuf -> supplier
Sourceval loop : ?strategy:strategy -> supplier -> 'a checkpoint -> 'a
Sourceval loop_handle : ('a -> 'answer) -> ('a checkpoint -> 'answer) -> supplier -> 'a checkpoint -> 'answer
Sourceval loop_handle_undo : ('a -> 'answer) -> ('a checkpoint -> 'a checkpoint -> 'answer) -> supplier -> 'a checkpoint -> 'answer
Sourceval shifts : 'a checkpoint -> 'a env option
Sourceval acceptable : 'a checkpoint -> token -> position -> bool
Sourcetype 'a lr1state
Sourceval number : _ lr1state -> int
Sourceval production_index : production -> int
Sourceval find_production : int -> production
Sourcetype element =
  1. | Element : 'a lr1state * 'a * position * position -> element
Sourceval stack : 'a env -> stack
Sourceval top : 'a env -> element option
Sourceval pop_many : int -> 'a env -> 'a env option
Sourceval get : int -> 'a env -> element option
Sourceval current_state_number : 'a env -> int
Sourceval equal : 'a env -> 'a env -> bool
Sourceval positions : 'a env -> position * position
Sourceval env_has_default_reduction : 'a env -> bool
Sourceval state_has_default_reduction : _ lr1state -> bool
Sourceval pop : 'a env -> 'a env option
Sourceval force_reduction : production -> 'a env -> 'a env
Sourceval input_needed : 'a env -> 'a checkpoint
include INSPECTION with type 'a lr1state := 'a lr1state with type production := production with type 'a env := 'a env
include SYMBOLS
Sourcetype 'a terminal
Sourcetype 'a nonterminal
Sourcetype 'a symbol =
  1. | T : 'a terminal -> 'a symbol
  2. | N : 'a nonterminal -> 'a symbol
Sourcetype xsymbol =
  1. | X : 'a symbol -> xsymbol
Sourcetype item = production * int
Sourceval compare_terminals : _ terminal -> _ terminal -> int
Sourceval compare_nonterminals : _ nonterminal -> _ nonterminal -> int
Sourceval compare_symbols : xsymbol -> xsymbol -> int
Sourceval compare_productions : production -> production -> int
Sourceval compare_items : item -> item -> int
Sourceval incoming_symbol : 'a lr1state -> 'a symbol
Sourceval items : _ lr1state -> item list
Sourceval rhs : production -> xsymbol list
Sourceval nullable : _ nonterminal -> bool
Sourceval first : _ nonterminal -> _ terminal -> bool
Sourceval xfirst : xsymbol -> _ terminal -> bool
Sourceval foreach_terminal : (xsymbol -> 'a -> 'a) -> 'a -> 'a
Sourceval foreach_terminal_but_error : (xsymbol -> 'a -> 'a) -> 'a -> 'a
Sourceval feed : 'a symbol -> position -> 'a -> position -> 'b env -> 'b env
OCaml

Innovation. Community. Security.