Defunctorize the ResJIT module.
[SXSI/xpathcomp.git] / src / runtime.mli
index 0ce04ef..fd36d23 100644 (file)
@@ -6,3 +6,12 @@ module type S = sig
 end
 
 module Make (U : ResJIT.S) : S with type result_set = U.NS.t
+
+type 'a result_ops = {
+  empty : 'a;
+  subtree_tags : Tree.t -> Tree.node -> Tag.t -> 'a;
+  subtree_elements : Tree.t -> Tree.node -> 'a;
+  exec : 'a array -> 'a array -> 'a array -> Tree.node -> ResJIT.code -> unit;
+}
+
+val top_down_run : 'a result_ops -> Ata.t -> Tree.t -> Tree.node -> 'a