val chars_of_string: string -> char list type 'a parser = char list -> ('a * char list) list val return: 'a -> 'a parser val (>>=): 'a parser -> ('a -> 'b parser) -> 'b parser val prs_zero: 'a parser val prs_eof: unit parser val prs_predicate: (char -> bool) -> char parser;; val prs_many1: 'a parser -> ('a list) parser;; val prs_many: 'a parser -> ('a list) parser;; val prs_exact: int -> 'a parser -> ('a list) parser;; val prs_sep_by: 'a parser -> 'b parser -> ('a list) parser;; val prs_sep_by1: 'a parser -> 'b parser -> ('a list) parser;; val (++): 'a parser -> 'a parser -> 'a parser;; val (+++): 'a parser -> 'a parser -> 'a parser;; val prs_char: char -> char parser;; val prs_hex_digit: char parser;;