2 (****************************************************************************)
6 (* INRIA Rocquencourt *)
8 (* Copyright 2007 Institut National de Recherche en Informatique et *)
9 (* en Automatique. All rights reserved. This file is distributed under *)
10 (* the terms of the GNU Library General Public License, with the special *)
11 (* exception on linking described in LICENSE at the top of the Objective *)
12 (* Caml source tree. *)
14 (****************************************************************************)
19 * - Daniel de Rauglaudre: initial version
20 * - Nicolas Pouillard: refactoring
23 module Make (Structure : Structure.S) : sig
27 Context.t -> Loc.t -> (Context.t -> 'a -> 'b) -> 'a -> ('b * Loc.t);
28 value level_number : internal_entry -> string -> int;
29 value strict_parsing : ref bool;
30 value strict_parsing_warning : ref bool;
32 internal_entry -> symbol -> symbol;
34 internal_entry -> tree -> tree;
36 internal_entry -> symbol -> internal_entry;
38 internal_entry -> Loc.t -> Action.t -> symbol -> Context.t -> tree ->
39 (Stream.t (Token.t * Loc.t) -> Action.t) -> Stream.t (Token.t * Loc.t) -> Action.t;
41 (internal_entry -> 'a -> 'b -> tree -> Context.t -> Stream.t (Token.t * Loc.t) -> Action.t) -> internal_entry ->
42 'a -> 'b -> Loc.t -> Action.t -> symbol -> Context.t -> tree -> Stream.t (Token.t * Loc.t) -> Action.t;
44 (internal_entry -> 'a -> 'b -> tree -> Context.t -> Stream.t (Token.t * Loc.t) -> Action.t) -> internal_entry ->
45 'a -> 'b -> Loc.t -> Action.t -> symbol -> Context.t -> tree -> Stream.t (Token.t * Loc.t) -> Action.t;
46 value parser_of_tree :
47 internal_entry -> int -> int -> tree -> Context.t -> Stream.t (Token.t * Loc.t) -> Action.t;
49 (Context.t -> Stream.t (Token.t * Loc.t) -> Action.t) -> internal_entry -> int -> int -> symbol -> tree ->
50 Context.t -> Loc.t -> Action.t -> Stream.t (Token.t * Loc.t) -> Action.t;
51 value parser_of_token_list :
52 (Context.t -> Loc.t -> Action.t -> Stream.t (Token.t * Loc.t) -> Action.t) -> list symbol -> Context.t -> Stream.t (Token.t * Loc.t) -> Action.t;
53 value parser_of_symbol :
54 internal_entry -> int -> symbol -> Context.t -> Stream.t (Token.t * Loc.t) -> Action.t;
55 value parse_top_symb' :
56 internal_entry -> symbol -> Context.t -> Stream.t (Token.t * Loc.t) -> Action.t;
57 value parse_top_symb :
58 internal_entry -> symbol -> Stream.t (Token.t * Loc.t) -> Action.t;
59 value start_parser_of_levels :
60 internal_entry -> int -> list level -> int -> Context.t -> Stream.t (Token.t * Loc.t) -> Action.t;
61 value start_parser_of_entry :
62 internal_entry -> int -> Context.t -> Stream.t (Token.t * Loc.t) -> Action.t;
63 value continue_parser_of_levels :
64 internal_entry -> int -> list level -> Context.t -> int -> Loc.t -> 'a -> Stream.t (Token.t * Loc.t) -> Action.t;
65 value continue_parser_of_entry :
66 internal_entry -> int -> Loc.t -> Action.t -> Context.t -> Stream.t (Token.t * Loc.t) -> Action.t;