module Gramext: sig .. end
type 'a parser_t = 'a Stream.t -> Obj.t
type 'a bparser_t = ('a, Obj.t) Fstream.bp
type parse_algorithm =
| |
Predictive |
| |
Backtracking |
| |
DefaultAlgorithm |
type 'a grammar = {
}
type 'a g_entry = {
|
egram : 'a grammar; |
|
ename : string; |
|
elocal : bool; |
|
mutable estart : int -> 'a parser_t; |
|
mutable econtinue : int -> int -> Obj.t -> 'a parser_t; |
|
mutable bstart : int -> 'a bparser_t; |
|
mutable bcontinue : int -> int -> Obj.t -> 'a bparser_t; |
|
mutable edesc : 'a g_desc; |
}
type 'a g_desc =
type 'a g_level = {
}
type g_assoc =
type 'a g_symbol =
type g_action = Obj.t
type 'a g_tree =
type 'a g_node = {
}
type position =
| |
First |
| |
Last |
| |
Before of string |
| |
After of string |
| |
Like of string |
| |
Level of string |
val levels_of_rules : 'a g_entry ->
position option ->
(string option * g_assoc option *
('a g_symbol list * g_action) list)
list -> 'a g_level list
val srules : ('a g_symbol list * g_action) list -> 'a g_symbol
val action : 'a -> g_action
val eq_symbol : 'a g_symbol -> 'a g_symbol -> bool
val delete_rule_in_level_list : 'a g_entry ->
'a g_symbol list ->
'a g_level list -> 'a g_level list
val warning_verbose : bool Pervasives.ref