Parser.Parsing
type state = Parser_state.state
val traverse_list :
('a -> state -> state * 'b) ->
'a Support.List.t ->
state ->
state * 'b Support.List.t
val traverse_list1 :
('a -> state -> state * 'b) ->
'a Support.List1.t ->
state ->
state * 'b Support.List1.t
val traverse_list2 :
('a -> state -> state * 'b) ->
'a Support.List2.t ->
state ->
state * 'b Support.List2.t
val traverse_list_void :
('a -> state -> state * 'b) ->
'a Support.List.t ->
state ->
state * Stdlib.Unit.t
val traverse_list1_void :
('a -> state -> state * 'b) ->
'a Support.List1.t ->
state ->
state * Stdlib.Unit.t
val traverse_list2_void :
('a -> state -> state * 'b) ->
'a Support.List2.t ->
state ->
state * Stdlib.Unit.t
val traverse_reverse_list :
('a -> state -> state * 'b) ->
'a Support.List.t ->
state ->
state * 'b Support.List.t
val traverse_reverse_list1 :
('a -> state -> state * 'b) ->
'a Support.List1.t ->
state ->
state * 'b Support.List1.t
val traverse_reverse_list2 :
('a -> state -> state * 'b) ->
'a Support.List2.t ->
state ->
state * 'b Support.List2.t
val traverse_reverse_list_void :
('a -> state -> state * 'b) ->
'a Support.List.t ->
state ->
state * Stdlib.Unit.t
val traverse_reverse_list1_void :
('a -> state -> state * 'b) ->
'a Support.List1.t ->
state ->
state * Stdlib.Unit.t
val traverse_reverse_list2_void :
('a -> state -> state * 'b) ->
'a Support.List2.t ->
state ->
state * Stdlib.Unit.t
val traverse_option :
('a -> state -> state * 'b) ->
'a Support.Option.t ->
state ->
state * 'b Support.Option.t
val traverse_option_void :
('a -> state -> state * 'b) ->
'a Support.Option.t ->
state ->
state * Stdlib.Unit.t
val seq_list :
(state -> state * 'a) Support.List.t ->
state ->
state * 'a Support.List.t
val seq_list1 :
(state -> state * 'a) Support.List1.t ->
state ->
state * 'a Support.List1.t
val peek : state -> state * Located_token.t option
val observe : state -> state * Located_token.t option
val insert : Located_token.t -> state -> state * unit
val next_location : state -> state * Beluga_syntax.Location.t option
val previous_location : state -> state * Beluga_syntax.Location.t option
val lf_kind : state -> state * (Synprs.lf_object, exn) Stdlib.result
val lf_typ : state -> state * (Synprs.lf_object, exn) Stdlib.result
val lf_term : state -> state * (Synprs.lf_object, exn) Stdlib.result
val clf_typ : state -> state * (Synprs.clf_object, exn) Stdlib.result
val clf_term : state -> state * (Synprs.clf_object, exn) Stdlib.result
val clf_term_pattern : state -> state * (Synprs.clf_object, exn) Stdlib.result
val clf_context :
state ->
state * (Synprs.clf_context_object, exn) Stdlib.result
val clf_substitution :
state ->
state * (Synprs.clf_context_object, exn) Stdlib.result
val schema : state -> state * (Synprs.schema_object, exn) Stdlib.result
val meta_type : state -> state * (Synprs.meta_thing, exn) Stdlib.result
val meta_object : state -> state * (Synprs.meta_thing, exn) Stdlib.result
val meta_pattern : state -> state * (Synprs.meta_thing, exn) Stdlib.result
val meta_context :
state ->
state * (Synprs.meta_context_object, exn) Stdlib.result
val comp_kind : state -> state * (Synprs.comp_sort_object, exn) Stdlib.result
val comp_typ : state -> state * (Synprs.comp_sort_object, exn) Stdlib.result
val comp_pattern :
state ->
state * (Synprs.comp_pattern_object, exn) Stdlib.result
val comp_copattern :
state ->
state * (Synprs.comp_copattern_object, exn) Stdlib.result
val comp_expression :
state ->
state * (Synprs.comp_expression_object, exn) Stdlib.result
val comp_context :
state ->
state * (Synprs.comp_context_object, exn) Stdlib.result
val harpoon_proof : state -> state * (Synprs.harpoon_proof, exn) Stdlib.result
val interactive_harpoon_command :
state ->
state * (Synprs.harpoon_repl_command, exn) Stdlib.result
type token = Parser_state.token
type location = Parser_state.location
type !'a parser = 'a t
val return : 'a -> 'a t
val fail : exn -> 'a t
val fail_at_location : Beluga_syntax.Location.t -> exn -> 'a t
val fail_at_next_location : exn -> 'a t
val fail_at_previous_location : exn -> 'a t
val some : 'a t -> 'a Support.List1.t t
val sep_by1 : sep:unit t -> 'a t -> 'a Support.List1.t t
val choice : 'a t Support.List.t -> 'a t
val eoi : unit t
val keyword : string -> unit t
val integer : int t
val dot_integer : int t
val pragma : string -> unit t
val string_literal : string t
val dot : unit t
val dots : unit t
val comma : unit t
val colon : unit t
val semicolon : unit t
val slash : unit t
val equals : unit t
val lambda : unit t
val hat : unit t
val underscore : unit t
val pipe : unit t
val forward_arrow : unit t
val backward_arrow : unit t
val thick_forward_arrow : unit t
val plus : unit t
val star : unit t
val hash : unit t
val double_colon : unit t
val turnstile : unit t
val turnstile_hash : unit t
val left_parenthesis : unit t
val right_parenthesis : unit t
val left_brace : unit t
val right_brace : unit t
val left_brack : unit t
val right_brack : unit t
val left_angle : unit t
val right_angle : unit t
val identifier : Beluga_syntax.Identifier.t t
val dot_identifier : Beluga_syntax.Identifier.t t
val hash_identifier : Beluga_syntax.Identifier.t t
val dollar_identifier : Beluga_syntax.Identifier.t t
val omittable_identifier : Beluga_syntax.Identifier.t option t
val omittable_hash_identifier : Beluga_syntax.Identifier.t option t
val omittable_dollar_identifier : Beluga_syntax.Identifier.t option t
val qualified_identifier : Beluga_syntax.Qualified_identifier.t t
val dot_qualified_identifier : Beluga_syntax.Qualified_identifier.t t
val qualified_or_plain_identifier :
[> `Plain of Beluga_syntax.Identifier.t
| `Qualified of Beluga_syntax.Qualified_identifier.t ]
t
val omittable_meta_object_identifier :
(Beluga_syntax.Identifier.t option * [> `Dollar | `Hash | `Plain ]) t
val meta_object_identifier :
(Beluga_syntax.Identifier.t * [> `Dollar | `Hash | `Plain ]) t
val hole : [> `Labelled of Beluga_syntax.Identifier.t | `Unlabelled ] parser
val block_comment : (Beluga_syntax.Location.t * string) t
val signature_file : Synprs.signature_file t
val signature_global_pragma : Synprs.signature_global_pragma t
val signature_entry : Synprs.signature_entry t
val signature_declaration : Synprs.signature_declaration t
val trust_totality_declaration : Synprs.signature_totality_declaration t
val named_totality_declaration : Synprs.signature_totality_declaration t
val numeric_totality_declaration : Synprs.signature_totality_declaration t
val totality_declaration : Synprs.signature_totality_declaration t