package bark

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
type ('context, 'problem, 'value) parser
type 'context located = {
  1. row : int;
  2. col : int;
  3. context : 'context;
}
type ('context, 'problem) dead_end = {
  1. row : int;
  2. col : int;
  3. problem : 'problem;
  4. context_stack : 'context located list;
}
val run : ('c, 'x, 'a) parser -> string -> ('a, ('c, 'x) dead_end list) result
val in_context : 'context -> ('context, 'x, 'a) parser -> ('context, 'x, 'a) parser
type 'x token =
  1. | Token of string * 'x
val is_alpha : char -> bool
val is_num : char -> bool
val int : 'x -> ('c, 'x, int) parser
val float : 'x -> 'x -> ('c, 'x, float) parser
val symbol : 'x token -> ('c, 'x, unit) parser
val keyword : 'x token -> ('c, 'x, unit) parser
module String_set : sig ... end
val variable : start:(char -> bool) -> inner:(char -> bool) -> reserved:String_set.t -> expecting:'x -> ('c, 'x, string) parser
val endd : 'x -> ('c, 'x, unit) parser
val succeed : 'a -> ('c, 'x, 'a) parser
val (|=) : ('c, 'x, 'a -> 'b) parser -> ('c, 'x, 'a) parser -> ('c, 'x, 'b) parser
val (|.) : ('c, 'x, 'keep) parser -> ('c, 'x, 'ignore) parser -> ('c, 'x, 'keep) parser
val lazily : (unit -> ('c, 'x, 'a) parser) -> ('c, 'x, 'a) parser
val and_then : ('a -> ('c, 'x, 'b) parser) -> ('c, 'x, 'a) parser -> ('c, 'x, 'b) parser
val problem : 'x -> ('c, 'x, 'a) parser
val one_of : ('c, 'x, 'a) parser list -> ('c, 'x, 'a) parser
val map : ('a -> 'b) -> ('c, 'x, 'a) parser -> ('c, 'x, 'b) parser
val backtrackable : ('c, 'x, 'a) parser -> ('c, 'x, 'a) parser
val commit : 'a -> ('c, 'x, 'a) parser
val token : 'x token -> ('c, 'x, unit) parser
type trailing =
  1. | Forbidden
  2. | Optional
  3. | Mandatory
val sequence : start:'x token -> separator:'x token -> endd:'x token -> spaces:('c, 'x, unit) parser -> item:('c, 'x, 'a) parser -> trailing:trailing -> ('c, 'x, 'a list) parser
type ('state, 'a) step =
  1. | Loop of 'state
  2. | Done of 'a
val loop : 'state -> ('state -> ('c, 'x, ('state, 'a) step) parser) -> ('c, 'x, 'a) parser
val spaces : ('c, 'x, unit) parser
val line_comment : 'x token -> ('c, 'x, unit) parser
type nestable =
  1. | NotNestable
  2. | Nestable
val multi_comment : 'x token -> 'x token -> nestable -> ('c, 'x, unit) parser
val get_chomped_string : ('c, 'x, 'a) parser -> ('c, 'x, string) parser
val chomp_if : (char -> bool) -> 'x -> ('c, 'x, unit) parser
val chomp_while : (char -> bool) -> ('c, 'x, unit) parser
val chomp_until : 'x token -> ('c, 'x, unit) parser
val chomp_until_end_or : string -> ('c, 'x, unit) parser
val map_chomped_string : (string -> 'a -> 'b) -> ('c, 'x, 'a) parser -> ('c, 'x, 'b) parser
val with_indent : int -> ('c, 'x, 'a) parser -> ('c, 'x, 'a) parser
val get_indent : ('c, 'x, int) parser
val get_position : ('c, 'x, int * int) parser
val get_row : ('c, 'x, int) parser
val get_col : ('c, 'x, int) parser
val get_offset : ('c, 'x, int) parser
val get_source : ('c, 'x, string) parser
module Syntax : sig ... end
OCaml

Innovation. Community. Security.