sig   type 'a or_error = ('a, string) Result.result   type line_num = int   type col_num = int   type parse_branch   val string_of_branch : CCParse.parse_branch -> string   exception ParseError of CCParse.parse_branch * (unit -> string)   type position   type state   val state_of_string : string -> CCParse.state   type 'a t = CCParse.state -> ok:('-> unit) -> err:(exn -> unit) -> unit   val return : '-> 'CCParse.t   val pure : '-> 'CCParse.t   val ( >|= ) : 'CCParse.t -> ('-> 'b) -> 'CCParse.t   val map : ('-> 'b) -> 'CCParse.t -> 'CCParse.t   val map2 : ('-> '-> 'c) -> 'CCParse.t -> 'CCParse.t -> 'CCParse.t   val map3 :     ('-> '-> '-> 'd) ->     'CCParse.t -> 'CCParse.t -> 'CCParse.t -> 'CCParse.t   val ( >>= ) : 'CCParse.t -> ('-> 'CCParse.t) -> 'CCParse.t   val ( <*> ) : ('-> 'b) CCParse.t -> 'CCParse.t -> 'CCParse.t   val ( <* ) : 'CCParse.t -> 'CCParse.t -> 'CCParse.t   val ( *> ) : 'CCParse.t -> 'CCParse.t -> 'CCParse.t   val fail : string -> 'CCParse.t   val failf : ('a, unit, string, 'CCParse.t) Pervasives.format4 -> 'a   val parsing : string -> 'CCParse.t -> 'CCParse.t   val eoi : unit CCParse.t   val nop : unit CCParse.t   val char : char -> char CCParse.t   val char_if : (char -> bool) -> char CCParse.t   val chars_if : (char -> bool) -> string CCParse.t   val chars1_if : (char -> bool) -> string CCParse.t   val endline : char CCParse.t   val space : char CCParse.t   val white : char CCParse.t   val skip_chars : (char -> bool) -> unit CCParse.t   val skip_space : unit CCParse.t   val skip_white : unit CCParse.t   val is_alpha : char -> bool   val is_num : char -> bool   val is_alpha_num : char -> bool   val is_space : char -> bool   val is_white : char -> bool   val ( <|> ) : 'CCParse.t -> 'CCParse.t -> 'CCParse.t   val ( <?> ) : 'CCParse.t -> string -> 'CCParse.t   val try_ : 'CCParse.t -> 'CCParse.t   val suspend : (unit -> 'CCParse.t) -> 'CCParse.t   val string : string -> string CCParse.t   val many : 'CCParse.t -> 'a list CCParse.t   val many1 : 'CCParse.t -> 'a list CCParse.t   val skip : 'CCParse.t -> unit CCParse.t   val sep : by:'CCParse.t -> 'CCParse.t -> 'a list CCParse.t   val sep1 : by:'CCParse.t -> 'CCParse.t -> 'a list CCParse.t   val fix : ('CCParse.t -> 'CCParse.t) -> 'CCParse.t   val memo : 'CCParse.t -> 'CCParse.t   val fix_memo : ('CCParse.t -> 'CCParse.t) -> 'CCParse.t   val get_lnum : int CCParse.t   val get_cnum : int CCParse.t   val get_pos : (int * int) CCParse.t   val parse : 'CCParse.t -> CCParse.state -> 'CCParse.or_error   val parse_exn : 'CCParse.t -> CCParse.state -> 'a   val parse_string : 'CCParse.t -> string -> 'CCParse.or_error   val parse_string_exn : 'CCParse.t -> string -> 'a   val parse_file : 'CCParse.t -> string -> 'CCParse.or_error   val parse_file_exn : 'CCParse.t -> string -> 'a   module Infix :     sig       val ( >|= ) : 'CCParse.t -> ('-> 'b) -> 'CCParse.t       val ( >>= ) : 'CCParse.t -> ('-> 'CCParse.t) -> 'CCParse.t       val ( <*> ) : ('-> 'b) CCParse.t -> 'CCParse.t -> 'CCParse.t       val ( <* ) : 'CCParse.t -> 'CCParse.t -> 'CCParse.t       val ( *> ) : 'CCParse.t -> 'CCParse.t -> 'CCParse.t       val ( <|> ) : 'CCParse.t -> 'CCParse.t -> 'CCParse.t       val ( <?> ) : 'CCParse.t -> string -> 'CCParse.t     end   module U :     sig       val list :         ?start:string ->         ?stop:string -> ?sep:string -> 'CCParse.t -> 'a list CCParse.t       val int : int CCParse.t       val word : string CCParse.t       val pair :         ?start:string ->         ?stop:string ->         ?sep:string -> 'CCParse.t -> 'CCParse.t -> ('a * 'b) CCParse.t       val triple :         ?start:string ->         ?stop:string ->         ?sep:string ->         'CCParse.t ->         'CCParse.t -> 'CCParse.t -> ('a * 'b * 'c) CCParse.t     end end