(* camlp4r *) (***********************************************************************) (* *) (* Camlp4 *) (* *) (* Daniel de Rauglaudre, projet Cristal, INRIA Rocquencourt *) (* *) (* Copyright 2002 Institut National de Recherche en Informatique et *) (* Automatique. Distributed only by permission. *) (* *) (***********************************************************************) (* This file has been generated by program: do not edit! *) type 'te grammar = { gtokens : (Token.pattern, int ref) Hashtbl.t; mutable glexer : 'te Token.glexer } ;; type 'te g_entry = { egram : 'te grammar; ename : string; mutable estart : int -> 'te Stream.t -> Obj.t; mutable econtinue : int -> int -> Obj.t -> 'te Stream.t -> Obj.t; mutable edesc : 'te g_desc } and 'te g_desc = Dlevels of 'te g_level list | Dparser of ('te Stream.t -> Obj.t) and 'te g_level = { assoc : g_assoc; lname : string option; lsuffix : 'te g_tree; lprefix : 'te g_tree } and g_assoc = NonA | RightA | LeftA and 'te g_symbol = Snterm of 'te g_entry | Snterml of 'te g_entry * string | Slist0 of 'te g_symbol | Slist0sep of 'te g_symbol * 'te g_symbol | Slist1 of 'te g_symbol | Slist1sep of 'te g_symbol * 'te g_symbol | Sopt of 'te g_symbol | Sself | Snext | Stoken of Token.pattern | Stree of 'te g_tree and g_action = Obj.t and 'te g_tree = Node of 'te g_node | LocAct of g_action * g_action list | DeadEnd and 'te g_node = { node : 'te g_symbol; son : 'te g_tree; brother : 'te g_tree } ;; type position = First | Last | Before of string | After of string | Level of string ;; val levels_of_rules : 'te g_entry -> position option -> (string option * g_assoc option * ('te g_symbol list * g_action) list) list -> 'te g_level list;; val srules : ('te g_symbol list * g_action) list -> 'te g_symbol;; external action : 'a -> g_action = "%identity";; val delete_rule_in_level_list : 'te g_entry -> 'te g_symbol list -> 'te g_level list -> 'te g_level list;; val warning_verbose : bool ref;;