type token_location = {str : string;charpos : int;line : int;column : int;file : Common.filename;
}and add = | AddStr of string| AddNewlineAndIdent
type token_kind = | LPar| RPar| LBrace| RBrace| LBracket| RBracket| LAngle| RAngle| Esthet of esthet| Eof| Other
and esthet = | Newline| Space
val str_of_info : info -> stringval line_of_info : info -> intval col_of_info : info -> intval pos_of_info : info -> intval string_of_info : info -> stringval is_origintok : info -> booltype parsing_stat = {filename : Common.filename;mutable correct : int;mutable bad : int;mutable have_timeout : bool;mutable problematic_lines : (string list * int) list;
}val print_parsing_stat_list : ?verbose:bool -> parsing_stat list -> unitval print_recurring_problematic_tokens : parsing_stat list -> unittype 'tok tokens_state = {mutable rest : 'tok list;mutable current : 'tok;mutable passed : 'tok list;
}val tokinfo_str_pos : string -> int -> infoval error_message_info : info -> stringval print_bad : int -> (int * int) -> string array -> unitval full_charpos_to_pos_large_from_changen : changen -> int -> int * int