module Inria_lexgen: sig
.. end
exception Memory_overflow
type
automata =
type
automata_trans =
type
automata_move =
| |
Backtrack |
| |
Goto of int |
type
memory_action =
| |
Copy of int * int |
| |
Set of int |
type
tag_action =
| |
SetTag of int * int |
| |
EraseTag of int |
type
tag_base =
| |
Start |
| |
End |
| |
Mem of int |
type
tag_addr =
type
ident_info =
type
t_env = (string * ident_info) list
type ('a, 'b)
automata_entry = {
|
auto_name : string ; |
|
auto_args : 'a ; |
|
auto_mem_size : int ; |
|
auto_initial_state : int * memory_action list ; |
|
auto_actions : (int * t_env * 'b) list ; |
}
val make_dfa : ('a, 'b) Inria_syntax.entry list ->
('a, 'b) automata_entry list * automata array