fmlib.fmlib_parse
Buffer.Make
fmlib
fmlib.fmlib_pretty
fmlib.fmlib_std
module State : Fmlib_std.Interfaces.ANY
module Token : Fmlib_std.Interfaces.ANY
module Expect : Fmlib_std.Interfaces.ANY
module Semantic : Fmlib_std.Interfaces.ANY
module Error : sig ... end
type _end =
| No_end
| End_received
| End_consumed
type t = {
state : State.t;
has_consumed : bool;
error : Error.t;
la_ptr : int;
is_buffering : bool;
toks : Token.t array;
_end : _end;
}
val init : State.t -> t
val state : t -> State.t
val error : t -> Error.t
val count_toks : t -> int
val has_end : t -> bool
val has_lookahead : t -> bool
val lookaheads : t -> Token.t array
val first_lookahead : t -> Token.t option
val push_token : Token.t -> t -> t
val push_end : t -> t
val update : (State.t -> State.t) -> t -> t
val add_expected : Expect.t -> t -> t
val put_error : Semantic.t -> t -> t
val clear_errors : t -> t
val clear_last_error : t -> t
val consume : State.t -> t -> t
val reject : Expect.t -> t -> t
val start_new_consumer : t -> t
val has_consumed : t -> bool
val end_new_consumer : t -> t -> t
val start_alternatives : t -> t
val end_failed_alternatives : Expect.t -> t -> t -> t
val end_succeeded_alternatives : t -> t -> t
val start_backtrack : t -> t
val end_backtrack_success : t -> t -> t
val end_backtrack_fail : Expect.t option -> t -> t -> t