package earley

  1. Overview
  2. Docs

Parameters

Signature

include module type of struct include Initial end
val debug_attach : bool ref
val spec : (Arg.key * Arg.spec * Arg.doc) list
val before_parse_hook : unit -> unit
type expression_prio = Initial.expression_prio =
  1. | Seq
  2. | If
  3. | Aff
  4. | Tupl
  5. | Disj
  6. | Conj
  7. | Eq
  8. | Append
  9. | Cons
  10. | Sum
  11. | Prod
  12. | Pow
  13. | Opp
  14. | App
  15. | Dash
  16. | Dot
  17. | Prefix
  18. | Atom
val expression_prios : expression_prio list
type alm = Initial.alm =
  1. | NoMatch
  2. | Match
  3. | Let
val allow_match : alm -> bool
val allow_let : alm -> bool
val string_exp : (alm * expression_prio) -> string
val set_expression_lvl : ((alm * expression_prio) -> Parsetree.expression Earley_core.Earley.grammar) -> unit
val parameter : bool -> [ `Arg of Asttypes.arg_label * Parsetree.expression option * Parsetree.pattern | `Type of string Location.loc ] Earley_core.Earley.grammar
val set_parameter : (bool -> [ `Arg of Asttypes.arg_label * Parsetree.expression option * Parsetree.pattern | `Type of string Location.loc ] Earley_core.Earley.grammar) -> unit
type type_prio = Initial.type_prio =
  1. | TopType
  2. | As
  3. | Arr
  4. | ProdType
  5. | DashType
  6. | AppType
  7. | AtomType
val type_prios : type_prio list
val type_prio_to_string : ('a * type_prio) -> string
val next_type_prio : type_prio -> type_prio
val typexpr_lvl_raw : (bool * type_prio) -> Parsetree.core_type Earley_core.Earley.grammar
val set_typexpr_lvl : ((((bool * type_prio) -> bool) * Parsetree.core_type Earley_core.Earley.grammar) list * ((bool * type_prio) -> Parsetree.core_type Earley_core.Earley.grammar list)) -> unit
type pattern_prio = Initial.pattern_prio =
  1. | AltPat
  2. | TupPat
  3. | ConsPat
  4. | ConstrPat
  5. | AtomPat
val topPat : pattern_prio
val pat_prio_to_string : ('a * pattern_prio) -> string
val next_pat_prio : pattern_prio -> pattern_prio
val set_pattern_lvl : ((((bool * pattern_prio) -> bool) * Parsetree.pattern Earley_core.Earley.grammar) list * ((bool * pattern_prio) -> Parsetree.pattern Earley_core.Earley.grammar list)) -> unit
val extra_prefix_expressions : Parsetree.expression Earley_core.Earley.grammar list
val extra_patterns : ((bool * pattern_prio) -> Parsetree.pattern Earley_core.Earley.grammar) list
val parse_string' : 'a Earley_core.Earley.grammar -> string -> 'a
val mk_attrib : Astextra.loc -> 'a -> string -> 'a Asttypes.loc * Parsetree.payload
val attach_attrib : Location.t -> (string Asttypes.loc * Parsetree.payload) list -> (string Asttypes.loc * Parsetree.payload) list
val attach_gen : (Location.t -> (string Asttypes.loc * Parsetree.payload) -> 'a) -> Location.t -> 'a list
val attach_sig : Location.t -> Parsetree.signature_item list
val attach_str : Location.t -> Parsetree.structure_item list
val union_re : string list -> string
val arrow_re : string Earley_core.Earley.grammar
val infix_symb_re : expression_prio -> string
val infix_prios : expression_prio list
val prefix_symb_re : expression_prio -> string
val prefix_prios : expression_prio list
val infix_symbol : expression_prio -> string Earley_core.Earley.grammar
val infix_symbol__set__grammar : (expression_prio -> string Earley_core.Earley.grammar) -> unit
val prefix_symbol : expression_prio -> string Earley_core.Earley.grammar
val prefix_symbol__set__grammar : (expression_prio -> string Earley_core.Earley.grammar) -> unit
val entry_points : (string * entry_point) list
val ouident : string Earley_core.Earley.grammar
val uident : string Earley_core.Earley.grammar
val olident : string Earley_core.Earley.grammar
val oident : string Earley_core.Earley.grammar
type tree =
  1. | Node of tree * tree
  2. | Leaf of string
val string_of_tree : tree -> string
val list_antiquotation : Location.t -> Parsetree.expression -> 'a list
val operator_name : string Earley_core.Earley.grammar
val constr_name : string Earley_core.Earley.grammar
val smodule_name : string Earley_core.Earley.grammar
val module_name : string Asttypes.loc Earley_core.Earley.grammar
val module_path_gen : bool -> Longident.t Earley_core.Earley.grammar
val set_module_path_gen : (bool -> Longident.t Earley_core.Earley.grammar) -> unit
val module_path_suit : bool -> (Longident.t -> Longident.t) Earley_core.Earley.grammar
val set_module_path_suit : (bool -> (Longident.t -> Longident.t) Earley_core.Earley.grammar) -> unit
val module_path_suit_aux : bool -> (Longident.t -> Longident.t) Earley_core.Earley.grammar
val module_path_suit_aux__set__grammar : (bool -> (Longident.t -> Longident.t) Earley_core.Earley.grammar) -> unit
val extended_module_path : Longident.t Earley_core.Earley.grammar
val post_item_attributes : Astextra.attrs Earley_core.Earley.grammar
val floating_attribute : (string Asttypes.loc * Parsetree.payload) Earley_core.Earley.grammar
val floating_extension : (string Asttypes.loc * Parsetree.payload) Earley_core.Earley.grammar
val polymorphic_variant_type : Parsetree.core_type Earley_core.Earley.grammar
val constr_name2 : string Earley_core.Earley.grammar
val bar : bool -> unit Earley_core.Earley.grammar
val bar__set__grammar : (bool -> unit Earley_core.Earley.grammar) -> unit
val constr_decl__set__grammar : (bool -> (string Asttypes.loc * Parsetree.constructor_arguments * Parsetree.core_type option * Astextra.attrs) Earley_core.Earley.grammar) -> unit

FIXME OCAML: the bar is included in position

val type_constr_decl__set__grammar : (bool -> Parsetree.constructor_declaration Earley_core.Earley.grammar) -> unit
val type_constr_extn__set__grammar : (bool -> Parsetree.extension_constructor Earley_core.Earley.grammar) -> unit
val typedef_gen : bool -> 'a Earley_core.Earley.grammar -> ('a -> string) -> (Location.t option -> 'a Asttypes.loc * Parsetree.type_declaration) Earley_core.Earley.grammar
val extra_patterns_grammar : (bool * pattern_prio) -> Parsetree.pattern Earley_core.Earley.grammar
val extra_patterns_grammar__set__grammar : ((bool * pattern_prio) -> Parsetree.pattern Earley_core.Earley.grammar) -> unit
val let_re : string
type assoc =
  1. | NoAssoc
  2. | Left
  3. | Right
val assoc : expression_prio -> assoc
val infix_prio : string -> expression_prio
val prefix_prio : string -> expression_prio
val array_function : Location.t -> string -> string -> Parsetree.expression
val bigarray_function : Location.t -> string -> string -> Parsetree.expression
val apply_params : ?gh:bool -> Location.t -> ([< `Arg of Asttypes.arg_label * Parsetree.expression option * Parsetree.pattern | `Type of Astextra.str ] * Location.t) list -> Parsetree.expression -> Parsetree.expression

FIXME OCAML: should be ghost, or above should not be ghost

val apply_params_cls : ?gh:bool -> Location.t -> ([< `Arg of Asttypes.arg_label * Parsetree.expression option * Parsetree.pattern | `Type of 'a ] * Location.t) list -> Parsetree.class_expr -> Parsetree.class_expr

FIXME OCAML: shoud be ghost as above ?

FIXME OCAML: shoud not change the position below

val match_case__set__grammar : ((alm * expression_prio) -> Parsetree.case Earley_core.Earley.grammar) -> unit
val apply_lbl : Location.t -> (string * Parsetree.expression option) -> string * Parsetree.expression
val extra_expressions_grammar__set__grammar : ((alm * expression_prio) -> Parsetree.expression Earley_core.Earley.grammar) -> unit
val right_expression__set__grammar : (((expression_prio -> bool) * Parsetree.expression Earley_core.Earley.grammar) list * (expression_prio -> Parsetree.expression Earley_core.Earley.grammar list)) -> unit
val semicol__set__grammar : ((((alm * expression_prio) -> bool) * bool Earley_core.Earley.grammar) list * ((alm * expression_prio) -> bool Earley_core.Earley.grammar list)) -> unit
val noelse : bool -> unit Earley_core.Earley.grammar
val noelse__set__grammar : (((bool -> bool) * unit Earley_core.Earley.grammar) list * (bool -> unit Earley_core.Earley.grammar list)) -> unit
OCaml

Innovation. Community. Security.