(* *)
(***********************************************************************)
+
+type stats = private { mutable pass : int;
+ tree_size : int;
+ mutable fetch_trans_cache_access : int;
+ mutable fetch_trans_cache_miss : int;
+ mutable eval_trans_cache_access : int;
+ mutable eval_trans_cache_miss : int;
+ mutable nodes_per_run : int list;
+ }
+
module Make (T : Tree.S) :
- sig
- val eval : Ata.t -> T.t -> T.node -> T.node list
- end
+sig
+ module Tree : Tree.S with type node = T.node
+ module ResultSet : Deque.S with type elem = Tree.node
+
+ val eval : Ata.t -> Tree.t -> ResultSet.t -> ResultSet.t
+ val full_eval : Ata.t -> Tree.t -> ResultSet.t -> (State.t * ResultSet.t) list
+ val stats : unit -> stats
+end