package merlin-lib

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
include MenhirLib.IncrementalEngine.INCREMENTAL_ENGINE with type token = token
type token = token
type production
type 'a env
type '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
type strategy = [
  1. | `Legacy
  2. | `Simplified
]
val resume : ?strategy:strategy -> 'a checkpoint -> 'a checkpoint
val lexer_lexbuf_to_supplier : (Lexing.lexbuf -> token) -> Lexing.lexbuf -> supplier
val loop : ?strategy:strategy -> supplier -> 'a checkpoint -> 'a
val loop_handle : ('a -> 'answer) -> ('a checkpoint -> 'answer) -> supplier -> 'a checkpoint -> 'answer
val loop_handle_undo : ('a -> 'answer) -> ('a checkpoint -> 'a checkpoint -> 'answer) -> supplier -> 'a checkpoint -> 'answer
val shifts : 'a checkpoint -> 'a env option
val acceptable : 'a checkpoint -> token -> MenhirLib.IncrementalEngine.position -> bool
type 'a lr1state
val number : _ lr1state -> int
val production_index : production -> int
val find_production : int -> production
val stack : 'a env -> stack
val top : 'a env -> element option
val pop_many : int -> 'a env -> 'a env option
val get : int -> 'a env -> element option
val current_state_number : 'a env -> int
val equal : 'a env -> 'a env -> bool
val env_has_default_reduction : 'a env -> bool
val state_has_default_reduction : _ lr1state -> bool
val pop : 'a env -> 'a env option
val force_reduction : production -> 'a env -> 'a env
val input_needed : 'a env -> 'a checkpoint
type _ terminal =
  1. | T_error : unit terminal
  2. | T_WITH : unit terminal
  3. | T_WHILE_LWT : unit terminal
  4. | T_WHILE : unit terminal
  5. | T_WHEN : unit terminal
  6. | T_VIRTUAL : unit terminal
  7. | T_VAL : unit terminal
  8. | T_UNDERSCORE : unit terminal
  9. | T_UIDENT : string terminal
  10. | T_TYPE : unit terminal
  11. | T_TRY_LWT : unit terminal
  12. | T_TRY : unit terminal
  13. | T_TRUE : unit terminal
  14. | T_TO : unit terminal
  15. | T_TILDE : unit terminal
  16. | T_THEN : unit terminal
  17. | T_STRUCT : unit terminal
  18. | T_STRING : (string * Ocaml_parsing.Location.t * string option) terminal
  19. | T_STAR : unit terminal
  20. | T_SIG : unit terminal
  21. | T_SEMISEMI : unit terminal
  22. | T_SEMI : unit terminal
  23. | T_RPAREN : unit terminal
  24. | T_REC : unit terminal
  25. | T_RBRACKET : unit terminal
  26. | T_RBRACE : unit terminal
  27. | T_QUOTED_STRING_ITEM : (string * Ocaml_parsing.Location.t * string * Ocaml_parsing.Location.t * string option) terminal
  28. | T_QUOTED_STRING_EXPR : (string * Ocaml_parsing.Location.t * string * Ocaml_parsing.Location.t * string option) terminal
  29. | T_QUOTE : unit terminal
  30. | T_QUESTIONQUESTION : unit terminal
  31. | T_QUESTION : unit terminal
  32. | T_PRIVATE : unit terminal
  33. | T_PREFIXOP : string terminal
  34. | T_PLUSEQ : unit terminal
  35. | T_PLUSDOT : unit terminal
  36. | T_PLUS : unit terminal
  37. | T_PERCENT : unit terminal
  38. | T_OR : unit terminal
  39. | T_OPTLABEL : string terminal
  40. | T_OPEN : unit terminal
  41. | T_OF : unit terminal
  42. | T_OBJECT : unit terminal
  43. | T_NONREC : unit terminal
  44. | T_NEW : unit terminal
  45. | T_MUTABLE : unit terminal
  46. | T_MODULE : unit terminal
  47. | T_MINUSGREATER : unit terminal
  48. | T_MINUSDOT : unit terminal
  49. | T_MINUS : unit terminal
  50. | T_METHOD : unit terminal
  51. | T_MATCH_LWT : unit terminal
  52. | T_MATCH : unit terminal
  53. | T_LPAREN : unit terminal
  54. | T_LIDENT : string terminal
  55. | T_LET_LWT : unit terminal
  56. | T_LETOP : string terminal
  57. | T_LET : unit terminal
  58. | T_LESSMINUS : unit terminal
  59. | T_LESS : unit terminal
  60. | T_LBRACKETPERCENTPERCENT : unit terminal
  61. | T_LBRACKETPERCENT : unit terminal
  62. | T_LBRACKETLESS : unit terminal
  63. | T_LBRACKETGREATER : unit terminal
  64. | T_LBRACKETBAR : unit terminal
  65. | T_LBRACKETATATAT : unit terminal
  66. | T_LBRACKETATAT : unit terminal
  67. | T_LBRACKETAT : unit terminal
  68. | T_LBRACKET : unit terminal
  69. | T_LBRACELESS : unit terminal
  70. | T_LBRACE : unit terminal
  71. | T_LAZY : unit terminal
  72. | T_LABEL : string terminal
  73. | T_INT : (string * char option) terminal
  74. | T_INITIALIZER : unit terminal
  75. | T_INHERIT : unit terminal
  76. | T_INFIXOP4 : string terminal
  77. | T_INFIXOP3 : string terminal
  78. | T_INFIXOP2 : string terminal
  79. | T_INFIXOP1 : string terminal
  80. | T_INFIXOP0 : string terminal
  81. | T_INCLUDE : unit terminal
  82. | T_IN : unit terminal
  83. | T_IF : unit terminal
  84. | T_HASHOP : string terminal
  85. | T_HASH : unit terminal
  86. | T_GREATERRBRACKET : unit terminal
  87. | T_GREATERRBRACE : unit terminal
  88. | T_GREATERDOT : unit terminal
  89. | T_GREATER : unit terminal
  90. | T_FUNCTOR : unit terminal
  91. | T_FUNCTION : unit terminal
  92. | T_FUN : unit terminal
  93. | T_FOR_LWT : unit terminal
  94. | T_FOR : unit terminal
  95. | T_FLOAT : (string * char option) terminal
  96. | T_FINALLY_LWT : unit terminal
  97. | T_FALSE : unit terminal
  98. | T_EXTERNAL : unit terminal
  99. | T_EXCEPTION : unit terminal
  100. | T_EQUAL : unit terminal
  101. | T_EOL : unit terminal
  102. | T_EOF : unit terminal
  103. | T_END : unit terminal
  104. | T_ELSE : unit terminal
  105. | T_DOWNTO : unit terminal
  106. | T_DOTTILDE : unit terminal
  107. | T_DOTOP : string terminal
  108. | T_DOTLESS : unit terminal
  109. | T_DOTDOT : unit terminal
  110. | T_DOT : unit terminal
  111. | T_DONE : unit terminal
  112. | T_DOCSTRING : Ocaml_parsing.Docstrings.docstring terminal
  113. | T_DO : unit terminal
  114. | T_CONSTRAINT : unit terminal
  115. | T_COMMENT : (string * Ocaml_parsing.Location.t) terminal
  116. | T_COMMA : unit terminal
  117. | T_COLONGREATER : unit terminal
  118. | T_COLONEQUAL : unit terminal
  119. | T_COLONCOLON : unit terminal
  120. | T_COLON : unit terminal
  121. | T_CLASS : unit terminal
  122. | T_CHAR : char terminal
  123. | T_BEGIN : unit terminal
  124. | T_BARRBRACKET : unit terminal
  125. | T_BARBAR : unit terminal
  126. | T_BAR : unit terminal
  127. | T_BANG : unit terminal
  128. | T_BACKQUOTE : unit terminal
  129. | T_ASSERT : unit terminal
  130. | T_AS : unit terminal
  131. | T_ANDOP : string terminal
  132. | T_AND : unit terminal
  133. | T_AMPERSAND : unit terminal
  134. | T_AMPERAMPER : unit terminal
type _ nonterminal =
  1. | N_with_type_binder : Ocaml_parsing.Asttypes.private_flag nonterminal
  2. | N_with_constraint : Ocaml_parsing.Parsetree.with_constraint nonterminal
  3. | N_virtual_with_private_flag : Ocaml_parsing.Asttypes.private_flag nonterminal
  4. | N_virtual_with_mutable_flag : Ocaml_parsing.Asttypes.mutable_flag nonterminal
  5. | N_virtual_flag : Ocaml_parsing.Asttypes.virtual_flag nonterminal
  6. | N_value_description : (Ocaml_parsing.Parsetree.value_description * string Ocaml_parsing.Location.loc option) nonterminal
  7. | N_value : ((string Ocaml_parsing.Location.loc * Ocaml_parsing.Asttypes.mutable_flag * Ocaml_parsing.Parsetree.class_field_kind) * Ocaml_parsing.Parsetree.attributes) nonterminal
  8. | N_val_longident : Ocaml_parsing.Longident.t nonterminal
  9. | N_val_ident : string nonterminal
  10. | N_val_extra_ident : string nonterminal
  11. | N_use_file : Ocaml_parsing.Parsetree.toplevel_phrase list nonterminal
  12. | N_type_variance : (Ocaml_parsing.Asttypes.variance * Ocaml_parsing.Asttypes.injectivity) nonterminal
  13. | N_type_variable : Ocaml_parsing.Parsetree.core_type nonterminal
  14. | N_type_parameters : (Ocaml_parsing.Parsetree.core_type * (Ocaml_parsing.Asttypes.variance * Ocaml_parsing.Asttypes.injectivity)) list nonterminal
  15. | N_type_parameter : (Ocaml_parsing.Parsetree.core_type * (Ocaml_parsing.Asttypes.variance * Ocaml_parsing.Asttypes.injectivity)) nonterminal
  16. | N_type_longident : Ocaml_parsing.Longident.t nonterminal
  17. | N_type_kind : (Ocaml_parsing.Parsetree.type_kind * Ocaml_parsing.Asttypes.private_flag * Ocaml_parsing.Parsetree.core_type option) nonterminal
  18. | N_type_constraint : (Ocaml_parsing.Parsetree.core_type option * Ocaml_parsing.Parsetree.core_type option) nonterminal
  19. | N_tuple_type : Ocaml_parsing.Parsetree.core_type nonterminal
  20. | N_toplevel_phrase : Ocaml_parsing.Parsetree.toplevel_phrase nonterminal
  21. | N_toplevel_directive : Ocaml_parsing.Parsetree.toplevel_phrase nonterminal
  22. | N_tag_field : Ocaml_parsing.Parsetree.row_field nonterminal
  23. | N_subtractive : string nonterminal
  24. | N_structure_item : Ocaml_parsing.Parsetree.structure_item nonterminal
  25. | N_structure : Ocaml_parsing.Parsetree.structure nonterminal
  26. | N_strict_binding : Ocaml_parsing.Parsetree.expression nonterminal
  27. | N_str_exception_declaration : (Ocaml_parsing.Parsetree.type_exception * string Ocaml_parsing.Location.loc option) nonterminal
  28. | N_single_attr_id : string nonterminal
  29. | N_simple_pattern_not_ident : Ocaml_parsing.Parsetree.pattern nonterminal
  30. | N_simple_pattern : Ocaml_parsing.Parsetree.pattern nonterminal
  31. | N_simple_expr : Ocaml_parsing.Parsetree.expression nonterminal
  32. | N_simple_delimited_pattern : Ocaml_parsing.Parsetree.pattern nonterminal
  33. | N_signed_constant : Ocaml_parsing.Parsetree.constant nonterminal
  34. | N_signature_item : Ocaml_parsing.Parsetree.signature_item nonterminal
  35. | N_signature : Ocaml_parsing.Parsetree.signature nonterminal
  36. | N_sig_exception_declaration : (Ocaml_parsing.Parsetree.type_exception * string Ocaml_parsing.Location.loc option) nonterminal
  37. | N_seq_expr : Ocaml_parsing.Parsetree.expression nonterminal
  38. | N_separated_or_terminated_nonempty_list_SEMI_record_expr_field_ : (Ocaml_parsing.Longident.t Ocaml_parsing.Location.loc * Ocaml_parsing.Parsetree.expression) list nonterminal
  39. | N_separated_or_terminated_nonempty_list_SEMI_pattern_ : Ocaml_parsing.Parsetree.pattern list nonterminal
  40. | N_separated_or_terminated_nonempty_list_SEMI_object_expr_field_ : (string Ocaml_parsing.Location.loc * Ocaml_parsing.Parsetree.expression) list nonterminal
  41. | N_separated_or_terminated_nonempty_list_SEMI_expr_ : Ocaml_parsing.Parsetree.expression list nonterminal
  42. | N_row_field : Ocaml_parsing.Parsetree.row_field nonterminal
  43. | N_reversed_separated_nontrivial_llist_STAR_atomic_type_ : Ocaml_parsing.Parsetree.core_type list nonterminal
  44. | N_reversed_separated_nontrivial_llist_COMMA_expr_ : Ocaml_parsing.Parsetree.expression list nonterminal
  45. | N_reversed_separated_nontrivial_llist_COMMA_core_type_ : Ocaml_parsing.Parsetree.core_type list nonterminal
  46. | N_reversed_separated_nonempty_llist_STAR_atomic_type_ : Ocaml_parsing.Parsetree.core_type list nonterminal
  47. | N_reversed_separated_nonempty_llist_COMMA_type_parameter_ : (Ocaml_parsing.Parsetree.core_type * (Ocaml_parsing.Asttypes.variance * Ocaml_parsing.Asttypes.injectivity)) list nonterminal
  48. | N_reversed_separated_nonempty_llist_COMMA_core_type_ : Ocaml_parsing.Parsetree.core_type list nonterminal
  49. | N_reversed_separated_nonempty_llist_BAR_row_field_ : Ocaml_parsing.Parsetree.row_field list nonterminal
  50. | N_reversed_separated_nonempty_llist_AND_with_constraint_ : Ocaml_parsing.Parsetree.with_constraint list nonterminal
  51. | N_reversed_separated_nonempty_llist_AMPERSAND_core_type_no_attr_ : Ocaml_parsing.Parsetree.core_type list nonterminal
  52. | N_reversed_preceded_or_separated_nonempty_llist_BAR_match_case_ : Ocaml_parsing.Parsetree.case list nonterminal
  53. | N_reversed_nonempty_llist_typevar_ : string Ocaml_parsing.Location.loc list nonterminal
  54. | N_reversed_nonempty_llist_name_tag_ : string list nonterminal
  55. | N_reversed_nonempty_llist_labeled_simple_expr_ : (Ocaml_parsing.Asttypes.arg_label * Ocaml_parsing.Parsetree.expression) list nonterminal
  56. | N_reversed_nonempty_llist_functor_arg_ : (Lexing.position * Ocaml_parsing.Parsetree.functor_parameter) list nonterminal
  57. | N_reversed_llist_preceded_CONSTRAINT_constrain__ : (Ocaml_parsing.Parsetree.core_type * Ocaml_parsing.Parsetree.core_type * Ocaml_parsing.Location.t) list nonterminal
  58. | N_reversed_bar_llist_extension_constructor_declaration_ : Ocaml_parsing.Parsetree.extension_constructor list nonterminal
  59. | N_reversed_bar_llist_extension_constructor_ : Ocaml_parsing.Parsetree.extension_constructor list nonterminal
  60. | N_reversed_bar_llist_constructor_declaration_ : Ocaml_parsing.Parsetree.constructor_declaration list nonterminal
  61. | N_record_expr_content : (Ocaml_parsing.Parsetree.expression option * (Ocaml_parsing.Longident.t Ocaml_parsing.Location.loc * Ocaml_parsing.Parsetree.expression) list) nonterminal
  62. | N_rec_flag : Ocaml_parsing.Asttypes.rec_flag nonterminal
  63. | N_private_virtual_flags : (Ocaml_parsing.Asttypes.private_flag * Ocaml_parsing.Asttypes.virtual_flag) nonterminal
  64. | N_private_flag : Ocaml_parsing.Asttypes.private_flag nonterminal
  65. | N_primitive_declaration : (Ocaml_parsing.Parsetree.value_description * string Ocaml_parsing.Location.loc option) nonterminal
  66. | N_post_item_attribute : Ocaml_parsing.Parsetree.attribute nonterminal
  67. | N_possibly_poly_core_type_no_attr_ : Ocaml_parsing.Parsetree.core_type nonterminal
  68. | N_possibly_poly_core_type_ : Ocaml_parsing.Parsetree.core_type nonterminal
  69. | N_payload : Ocaml_parsing.Parsetree.payload nonterminal
  70. | N_pattern_var : Ocaml_parsing.Parsetree.pattern nonterminal
  71. | N_pattern_no_exn : Ocaml_parsing.Parsetree.pattern nonterminal
  72. | N_pattern_gen : Ocaml_parsing.Parsetree.pattern nonterminal
  73. | N_pattern_comma_list_pattern_no_exn_ : Ocaml_parsing.Parsetree.pattern list nonterminal
  74. | N_pattern_comma_list_pattern_ : Ocaml_parsing.Parsetree.pattern list nonterminal
  75. | N_pattern : Ocaml_parsing.Parsetree.pattern nonterminal
  76. | N_parse_val_longident : Ocaml_parsing.Longident.t nonterminal
  77. | N_parse_pattern : Ocaml_parsing.Parsetree.pattern nonterminal
  78. | N_parse_mty_longident : Ocaml_parsing.Longident.t nonterminal
  79. | N_parse_module_type : Ocaml_parsing.Parsetree.module_type nonterminal
  80. | N_parse_module_expr : Ocaml_parsing.Parsetree.module_expr nonterminal
  81. | N_parse_mod_longident : Ocaml_parsing.Longident.t nonterminal
  82. | N_parse_mod_ext_longident : Ocaml_parsing.Longident.t nonterminal
  83. | N_parse_expression : Ocaml_parsing.Parsetree.expression nonterminal
  84. | N_parse_core_type : Ocaml_parsing.Parsetree.core_type nonterminal
  85. | N_parse_constr_longident : Ocaml_parsing.Longident.t nonterminal
  86. | N_parse_any_longident : Ocaml_parsing.Longident.t nonterminal
  87. | N_paren_module_expr : Ocaml_parsing.Parsetree.module_expr nonterminal
  88. | N_optlabel : string nonterminal
  89. | N_option_type_constraint_ : (Ocaml_parsing.Parsetree.core_type option * Ocaml_parsing.Parsetree.core_type option) option nonterminal
  90. | N_option_preceded_EQUAL_seq_expr__ : Ocaml_parsing.Parsetree.expression option nonterminal
  91. | N_option_preceded_EQUAL_pattern__ : Ocaml_parsing.Parsetree.pattern option nonterminal
  92. | N_option_preceded_EQUAL_module_type__ : Ocaml_parsing.Parsetree.module_type option nonterminal
  93. | N_option_preceded_EQUAL_expr__ : Ocaml_parsing.Parsetree.expression option nonterminal
  94. | N_option_preceded_COLON_core_type__ : Ocaml_parsing.Parsetree.core_type option nonterminal
  95. | N_option_preceded_AS_mkrhs_LIDENT___ : string Ocaml_parsing.Location.loc option nonterminal
  96. | N_option_SEMI_ : unit option nonterminal
  97. | N_option_BAR_ : unit option nonterminal
  98. | N_opt_ampersand : bool nonterminal
  99. | N_operator : string nonterminal
  100. | N_open_description : (Ocaml_parsing.Longident.t Ocaml_parsing.Location.loc Ocaml_parsing.Parsetree.open_infos * string Ocaml_parsing.Location.loc option) nonterminal
  101. | N_open_declaration : (Ocaml_parsing.Parsetree.module_expr Ocaml_parsing.Parsetree.open_infos * string Ocaml_parsing.Location.loc option) nonterminal
  102. | N_nonempty_type_kind : (Ocaml_parsing.Parsetree.type_kind * Ocaml_parsing.Asttypes.private_flag * Ocaml_parsing.Parsetree.core_type option) nonterminal
  103. | N_nonempty_list_raw_string_ : string list nonterminal
  104. | N_nonempty_list_mkrhs_LIDENT__ : string Ocaml_parsing.Location.loc list nonterminal
  105. | N_name_tag : string nonterminal
  106. | N_mutable_virtual_flags : (Ocaml_parsing.Asttypes.mutable_flag * Ocaml_parsing.Asttypes.virtual_flag) nonterminal
  107. | N_mutable_flag : Ocaml_parsing.Asttypes.mutable_flag nonterminal
  108. | N_mty_longident : Ocaml_parsing.Longident.t nonterminal
  109. | N_module_type_subst : (Ocaml_parsing.Parsetree.module_type_declaration * string Ocaml_parsing.Location.loc option) nonterminal
  110. | N_module_type_declaration : (Ocaml_parsing.Parsetree.module_type_declaration * string Ocaml_parsing.Location.loc option) nonterminal
  111. | N_module_type : Ocaml_parsing.Parsetree.module_type nonterminal
  112. | N_module_subst : (Ocaml_parsing.Parsetree.module_substitution * string Ocaml_parsing.Location.loc option) nonterminal
  113. | N_module_name : string option nonterminal
  114. | N_module_expr : Ocaml_parsing.Parsetree.module_expr nonterminal
  115. | N_module_declaration_body : Ocaml_parsing.Parsetree.module_type nonterminal
  116. | N_module_binding_body : Ocaml_parsing.Parsetree.module_expr nonterminal
  117. | N_mod_longident : Ocaml_parsing.Longident.t nonterminal
  118. | N_mod_ext_longident : Ocaml_parsing.Longident.t nonterminal
  119. | N_mk_longident_mod_longident_val_ident_ : Ocaml_parsing.Longident.t nonterminal
  120. | N_mk_longident_mod_longident_UIDENT_ : Ocaml_parsing.Longident.t nonterminal
  121. | N_mk_longident_mod_longident_LIDENT_ : Ocaml_parsing.Longident.t nonterminal
  122. | N_mk_longident_mod_ext_longident_ident_ : Ocaml_parsing.Longident.t nonterminal
  123. | N_mk_longident_mod_ext_longident___anonymous_41_ : Ocaml_parsing.Longident.t nonterminal
  124. | N_mk_longident_mod_ext_longident_UIDENT_ : Ocaml_parsing.Longident.t nonterminal
  125. | N_mk_longident_mod_ext_longident_LIDENT_ : Ocaml_parsing.Longident.t nonterminal
  126. | N_method_ : ((string Ocaml_parsing.Location.loc * Ocaml_parsing.Asttypes.private_flag * Ocaml_parsing.Parsetree.class_field_kind) * Ocaml_parsing.Parsetree.attributes) nonterminal
  127. | N_meth_list : (Ocaml_parsing.Parsetree.object_field list * Ocaml_parsing.Asttypes.closed_flag) nonterminal
  128. | N_match_case : Ocaml_parsing.Parsetree.case nonterminal
  129. | N_lwt_bindings : Ocaml_parsing.Ast_helper.let_bindings nonterminal
  130. | N_lwt_binding : Ocaml_parsing.Ast_helper.let_bindings nonterminal
  131. | N_listx_SEMI_record_pat_field_UNDERSCORE_ : ((Ocaml_parsing.Longident.t Ocaml_parsing.Location.loc * Ocaml_parsing.Parsetree.pattern) list * unit option) nonterminal
  132. | N_list_use_file_element_ : Ocaml_parsing.Parsetree.toplevel_phrase list list nonterminal
  133. | N_list_text_str_structure_item__ : Ocaml_parsing.Parsetree.structure_item list list nonterminal
  134. | N_list_text_cstr_class_field__ : Ocaml_parsing.Parsetree.class_field list list nonterminal
  135. | N_list_text_csig_class_sig_field__ : Ocaml_parsing.Parsetree.class_type_field list list nonterminal
  136. | N_list_structure_element_ : Ocaml_parsing.Parsetree.structure_item list list nonterminal
  137. | N_list_signature_element_ : Ocaml_parsing.Parsetree.signature_item list list nonterminal
  138. | N_list_post_item_attribute_ : Ocaml_parsing.Parsetree.attributes nonterminal
  139. | N_list_generic_and_type_declaration_type_subst_kind__ : Ocaml_parsing.Parsetree.type_declaration list nonterminal
  140. | N_list_generic_and_type_declaration_type_kind__ : Ocaml_parsing.Parsetree.type_declaration list nonterminal
  141. | N_list_attribute_ : Ocaml_parsing.Parsetree.attributes nonterminal
  142. | N_list_and_module_declaration_ : Ocaml_parsing.Parsetree.module_declaration list nonterminal
  143. | N_list_and_module_binding_ : Ocaml_parsing.Parsetree.module_binding list nonterminal
  144. | N_list_and_class_type_declaration_ : Ocaml_parsing.Parsetree.class_type Ocaml_parsing.Parsetree.class_infos list nonterminal
  145. | N_list_and_class_description_ : Ocaml_parsing.Parsetree.class_type Ocaml_parsing.Parsetree.class_infos list nonterminal
  146. | N_list_and_class_declaration_ : Ocaml_parsing.Parsetree.class_expr Ocaml_parsing.Parsetree.class_infos list nonterminal
  147. | N_letop_bindings : (Ocaml_parsing.Parsetree.pattern * Ocaml_parsing.Parsetree.expression * Ocaml_parsing.Parsetree.binding_op list) nonterminal
  148. | N_letop_binding_body : (Ocaml_parsing.Parsetree.pattern * Ocaml_parsing.Parsetree.expression) nonterminal
  149. | N_let_pattern : Ocaml_parsing.Parsetree.pattern nonterminal
  150. | N_let_bindings_no_ext_ : Ocaml_parsing.Ast_helper.let_bindings nonterminal
  151. | N_let_bindings_ext_ : Ocaml_parsing.Ast_helper.let_bindings nonterminal
  152. | N_let_binding_body_no_punning : (Ocaml_parsing.Parsetree.pattern * Ocaml_parsing.Parsetree.expression) nonterminal
  153. | N_let_binding_body : (Ocaml_parsing.Parsetree.pattern * Ocaml_parsing.Parsetree.expression * bool) nonterminal
  154. | N_labeled_simple_pattern : (Ocaml_parsing.Asttypes.arg_label * Ocaml_parsing.Parsetree.expression option * Ocaml_parsing.Parsetree.pattern) nonterminal
  155. | N_labeled_simple_expr : (Ocaml_parsing.Asttypes.arg_label * Ocaml_parsing.Parsetree.expression) nonterminal
  156. | N_label_longident : Ocaml_parsing.Longident.t nonterminal
  157. | N_label_let_pattern : (string * Ocaml_parsing.Parsetree.pattern) nonterminal
  158. | N_label_declarations : Ocaml_parsing.Parsetree.label_declaration list nonterminal
  159. | N_label_declaration_semi : Ocaml_parsing.Parsetree.label_declaration nonterminal
  160. | N_label_declaration : Ocaml_parsing.Parsetree.label_declaration nonterminal
  161. | N_item_extension : Ocaml_parsing.Parsetree.extension nonterminal
  162. | N_interface : Ocaml_parsing.Parsetree.signature nonterminal
  163. | N_index_mod : string nonterminal
  164. | N_implementation : Ocaml_parsing.Parsetree.structure nonterminal
  165. | N_ident : string nonterminal
  166. | N_generic_type_declaration_nonrec_flag_type_kind_ : ((Ocaml_parsing.Asttypes.rec_flag * string Ocaml_parsing.Location.loc option) * Ocaml_parsing.Parsetree.type_declaration) nonterminal
  167. | N_generic_type_declaration_no_nonrec_flag_type_subst_kind_ : ((Ocaml_parsing.Asttypes.rec_flag * string Ocaml_parsing.Location.loc option) * Ocaml_parsing.Parsetree.type_declaration) nonterminal
  168. | N_generic_constructor_declaration_epsilon_ : (Ocaml_parsing.Ast_helper.str * Ocaml_parsing.Ast_helper.str list * Ocaml_parsing.Parsetree.constructor_arguments * Ocaml_parsing.Parsetree.core_type option * Ocaml_parsing.Parsetree.attributes * Ocaml_parsing.Location.t * Ocaml_parsing.Docstrings.info) nonterminal
  169. | N_generic_constructor_declaration_BAR_ : (Ocaml_parsing.Ast_helper.str * Ocaml_parsing.Ast_helper.str list * Ocaml_parsing.Parsetree.constructor_arguments * Ocaml_parsing.Parsetree.core_type option * Ocaml_parsing.Parsetree.attributes * Ocaml_parsing.Location.t * Ocaml_parsing.Docstrings.info) nonterminal
  170. | N_generalized_constructor_arguments : (Ocaml_parsing.Ast_helper.str list * Ocaml_parsing.Parsetree.constructor_arguments * Ocaml_parsing.Parsetree.core_type option) nonterminal
  171. | N_functor_args : (Lexing.position * Ocaml_parsing.Parsetree.functor_parameter) list nonterminal
  172. | N_functor_arg : (Lexing.position * Ocaml_parsing.Parsetree.functor_parameter) nonterminal
  173. | N_function_type : Ocaml_parsing.Parsetree.core_type nonterminal
  174. | N_fun_def : Ocaml_parsing.Parsetree.expression nonterminal
  175. | N_fun_binding : Ocaml_parsing.Parsetree.expression nonterminal
  176. | N_formal_class_parameters : (Ocaml_parsing.Parsetree.core_type * (Ocaml_parsing.Asttypes.variance * Ocaml_parsing.Asttypes.injectivity)) list nonterminal
  177. | N_floating_attribute : Ocaml_parsing.Parsetree.attribute nonterminal
  178. | N_extension_constructor_rebind_epsilon_ : Ocaml_parsing.Parsetree.extension_constructor nonterminal
  179. | N_extension_constructor_rebind_BAR_ : Ocaml_parsing.Parsetree.extension_constructor nonterminal
  180. | N_extension : Ocaml_parsing.Parsetree.extension nonterminal
  181. | N_ext : string Ocaml_parsing.Location.loc option nonterminal
  182. | N_expr : Ocaml_parsing.Parsetree.expression nonterminal
  183. | N_direction_flag : Ocaml_parsing.Asttypes.direction_flag nonterminal
  184. | N_core_type : Ocaml_parsing.Parsetree.core_type nonterminal
  185. | N_constructor_declarations : Ocaml_parsing.Parsetree.constructor_declaration list nonterminal
  186. | N_constructor_arguments : Ocaml_parsing.Parsetree.constructor_arguments nonterminal
  187. | N_constrain_field : (Ocaml_parsing.Parsetree.core_type * Ocaml_parsing.Parsetree.core_type) nonterminal
  188. | N_constr_longident : Ocaml_parsing.Longident.t nonterminal
  189. | N_constr_ident : string nonterminal
  190. | N_constr_extra_nonprefix_ident : string nonterminal
  191. | N_constant : Ocaml_parsing.Parsetree.constant nonterminal
  192. | N_clty_longident : Ocaml_parsing.Longident.t nonterminal
  193. | N_class_type_declarations : (string Ocaml_parsing.Location.loc option * Ocaml_parsing.Parsetree.class_type_declaration list) nonterminal
  194. | N_class_type : Ocaml_parsing.Parsetree.class_type nonterminal
  195. | N_class_simple_expr : Ocaml_parsing.Parsetree.class_expr nonterminal
  196. | N_class_signature : Ocaml_parsing.Parsetree.class_type nonterminal
  197. | N_class_sig_field : Ocaml_parsing.Parsetree.class_type_field nonterminal
  198. | N_class_self_type : Ocaml_parsing.Parsetree.core_type nonterminal
  199. | N_class_self_pattern : Ocaml_parsing.Parsetree.pattern nonterminal
  200. | N_class_longident : Ocaml_parsing.Longident.t nonterminal
  201. | N_class_fun_def : Ocaml_parsing.Parsetree.class_expr nonterminal
  202. | N_class_fun_binding : Ocaml_parsing.Parsetree.class_expr nonterminal
  203. | N_class_field : Ocaml_parsing.Parsetree.class_field nonterminal
  204. | N_class_expr : Ocaml_parsing.Parsetree.class_expr nonterminal
  205. | N_attribute : Ocaml_parsing.Parsetree.attribute nonterminal
  206. | N_attr_id : string Ocaml_parsing.Location.loc nonterminal
  207. | N_atomic_type : Ocaml_parsing.Parsetree.core_type nonterminal
  208. | N_any_longident : Ocaml_parsing.Longident.t nonterminal
  209. | N_and_let_binding : Ocaml_parsing.Ast_helper.let_binding nonterminal
  210. | N_alias_type : Ocaml_parsing.Parsetree.core_type nonterminal
  211. | N_additive : string nonterminal
include MenhirLib.IncrementalEngine.INSPECTION with type 'a lr1state := 'a lr1state with type production := production with type 'a terminal := 'a terminal with type 'a nonterminal := 'a nonterminal with type 'a env := 'a env
include MenhirLib.IncrementalEngine.SYMBOLS with type 'a terminal := 'a terminal with type 'a nonterminal := 'a nonterminal
type 'a symbol =
  1. | T : 'a terminal -> 'a symbol
  2. | N : 'a nonterminal -> 'a symbol
type xsymbol =
  1. | X : 'a symbol -> xsymbol
type item = production * int
val compare_terminals : _ terminal -> _ terminal -> int
val compare_nonterminals : _ nonterminal -> _ nonterminal -> int
val compare_symbols : xsymbol -> xsymbol -> int
val compare_productions : production -> production -> int
val compare_items : item -> item -> int
val incoming_symbol : 'a lr1state -> 'a symbol
val items : _ lr1state -> item list
val lhs : production -> xsymbol
val rhs : production -> xsymbol list
val nullable : _ nonterminal -> bool
val first : _ nonterminal -> _ terminal -> bool
val xfirst : xsymbol -> _ terminal -> bool
val foreach_terminal : (xsymbol -> 'a -> 'a) -> 'a -> 'a
val foreach_terminal_but_error : (xsymbol -> 'a -> 'a) -> 'a -> 'a
OCaml

Innovation. Community. Security.