Module Grammar.GMake
Parameters
Signature
module EState : sig ... end
module GState : sig ... end
include S with type keyword_state := keyword_state and type 'a with_gstate := GState.t -> 'a and type 'a with_kwstate := keyword_state -> 'a and type 'a with_estate := EState.t -> 'a and type 'a mod_estate := EState.t -> EState.t * 'a
type keyword_state
type te
type 'c pattern
type ty_pattern
=
|
TPattern : 'a pattern -> ty_pattern
module Parsable : sig ... end
module Entry : sig ... end
module rec Symbol : sig ... end
and Rule : sig ... end
and Rules : sig ... end
module Production : sig ... end
type 'a single_extend_statement
= string option * Gramext.g_assoc option * 'a Production.t list
type 'a extend_statement
=
|
Reuse of string option * 'a Production.t list
Extend an existing level by its optional given name. If None, picks the topmost level.
|
Fresh of Gramext.position * 'a single_extend_statement list
Create a level at the given position.
type 's add_kw
=
{
add_kw : c. 's -> 'c pattern -> 's;
}
val safe_extend : 's add_kw -> EState.t -> 's -> 'a Entry.t -> 'a extend_statement -> EState.t * 's
val safe_delete_rule : EState.t -> 'a Entry.t -> 'a Production.t -> EState.t
module Unsafe : sig ... end