+ let dummy_set = StateSet.singleton State.dummy
+ let dummy_trans_list =
+ Ata.(TransList.cons
+ (Transition.make (State.dummy, QNameSet.empty, Formula.false_))
+ TransList.nil)
+
+ module Run =
+ struct
+ open Bigarray
+ type t = {
+ mutable pass : int;
+ auto : Ata.t;
+ trans_cache : Ata.TransList.t Cache.N2.t;
+ td_cache : StateSet.t Cache.N6.t;
+ bu_cache : StateSet.t Cache.N6.t;
+ mark_cache : (StateSet.t*StateSet.t*StateSet.t) Cache.N4.t;
+ }
+
+ let create a =
+ {
+ pass = 0;
+ auto = a;
+ trans_cache = Cache.N2.create dummy_trans_list;
+ td_cache = Cache.N6.create dummy_set;
+ bu_cache = Cache.N6.create dummy_set;
+ mark_cache = Cache.N4.create (dummy_set,dummy_set,dummy_set);
+ }
+ end
+