|
Packit |
1f8b6b |
(* camlp4r *)
|
|
Packit |
1f8b6b |
(****************************************************************************)
|
|
Packit |
1f8b6b |
(* *)
|
|
Packit |
1f8b6b |
(* OCaml *)
|
|
Packit |
1f8b6b |
(* *)
|
|
Packit |
1f8b6b |
(* INRIA Rocquencourt *)
|
|
Packit |
1f8b6b |
(* *)
|
|
Packit |
1f8b6b |
(* Copyright 2007 Institut National de Recherche en Informatique et *)
|
|
Packit |
1f8b6b |
(* en Automatique. All rights reserved. This file is distributed under *)
|
|
Packit |
1f8b6b |
(* the terms of the GNU Library General Public License, with the special *)
|
|
Packit |
1f8b6b |
(* exception on linking described in LICENSE at the top of the Camlp4 *)
|
|
Packit |
1f8b6b |
(* source tree. *)
|
|
Packit |
1f8b6b |
(* *)
|
|
Packit |
1f8b6b |
(****************************************************************************)
|
|
Packit |
1f8b6b |
|
|
Packit |
1f8b6b |
|
|
Packit |
1f8b6b |
|
|
Packit |
1f8b6b |
(* Authors:
|
|
Packit |
1f8b6b |
* - Daniel de Rauglaudre: initial version
|
|
Packit |
1f8b6b |
* - Nicolas Pouillard: refactoring
|
|
Packit |
1f8b6b |
*)
|
|
Packit |
1f8b6b |
|
|
Packit |
1f8b6b |
module Make (Structure : Structure.S) : sig
|
|
Packit |
1f8b6b |
open Structure;
|
|
Packit |
1f8b6b |
value add_loc :
|
|
Packit |
1f8b6b |
Loc.t -> (token_stream -> 'b) -> token_stream -> ('b * Loc.t);
|
|
Packit |
1f8b6b |
value level_number : internal_entry -> string -> int;
|
|
Packit |
1f8b6b |
value strict_parsing : ref bool;
|
|
Packit |
1f8b6b |
value strict_parsing_warning : ref bool;
|
|
Packit |
1f8b6b |
value top_symb :
|
|
Packit |
1f8b6b |
internal_entry -> symbol -> symbol;
|
|
Packit |
1f8b6b |
value top_tree :
|
|
Packit |
1f8b6b |
internal_entry -> tree -> tree;
|
|
Packit |
1f8b6b |
value entry_of_symb :
|
|
Packit |
1f8b6b |
internal_entry -> symbol -> internal_entry;
|
|
Packit |
1f8b6b |
value continue :
|
|
Packit |
1f8b6b |
internal_entry -> Loc.t -> Action.t -> symbol -> tree -> efun -> efun;
|
|
Packit |
1f8b6b |
value do_recover :
|
|
Packit |
1f8b6b |
(internal_entry -> 'a -> 'b -> tree -> efun) -> internal_entry ->
|
|
Packit |
1f8b6b |
'a -> 'b -> Loc.t -> Action.t -> symbol -> tree -> efun;
|
|
Packit |
1f8b6b |
value recover :
|
|
Packit |
1f8b6b |
(internal_entry -> 'a -> 'b -> tree -> efun) -> internal_entry ->
|
|
Packit |
1f8b6b |
'a -> 'b -> Loc.t -> Action.t -> symbol -> tree -> efun;
|
|
Packit |
1f8b6b |
value parser_of_tree :
|
|
Packit |
1f8b6b |
internal_entry -> int -> int -> tree -> efun;
|
|
Packit |
1f8b6b |
value parser_cont :
|
|
Packit |
1f8b6b |
efun -> internal_entry -> int -> int -> symbol -> tree -> Loc.t -> Action.t -> efun;
|
|
Packit |
1f8b6b |
value parser_of_token_list :
|
|
Packit |
1f8b6b |
(Loc.t -> Action.t -> efun) -> list symbol -> efun;
|
|
Packit |
1f8b6b |
value parser_of_symbol :
|
|
Packit |
1f8b6b |
internal_entry -> int -> symbol -> efun;
|
|
Packit |
1f8b6b |
value parse_top_symb :
|
|
Packit |
1f8b6b |
internal_entry -> symbol -> efun;
|
|
Packit |
1f8b6b |
value start_parser_of_levels :
|
|
Packit |
1f8b6b |
internal_entry -> int -> list level -> int -> efun;
|
|
Packit |
1f8b6b |
value start_parser_of_entry :
|
|
Packit |
1f8b6b |
internal_entry -> int -> efun;
|
|
Packit |
1f8b6b |
value continue_parser_of_levels :
|
|
Packit |
1f8b6b |
internal_entry -> int -> list level -> int -> Loc.t -> 'a -> efun;
|
|
Packit |
1f8b6b |
value continue_parser_of_entry :
|
|
Packit |
1f8b6b |
internal_entry -> int -> Loc.t -> Action.t -> efun;
|
|
Packit |
1f8b6b |
end;
|