X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=src%2FnodeSet.mli;h=2417eded9816cfaed315b888435ee52196316199;hb=7c4c61cec6fe1ae3a1b83a59b17ce90adcfe9b0b;hp=a25189a2c420a69c2c1fd4666a6b8eb4f57597f3;hpb=4b52da1a20a4fe031930bb96d2ca46bec06dc529;p=SXSI%2Fxpathcomp.git diff --git a/src/nodeSet.mli b/src/nodeSet.mli index a25189a..2417ede 100644 --- a/src/nodeSet.mli +++ b/src/nodeSet.mli @@ -1,8 +1,12 @@ + module type S = sig type t type elt = Tree.node val empty : t + val var : (int*State.t) -> t + val close : ((int*State.t), t) Hashtbl.t -> t -> t + val is_open : t -> bool val singleton : elt -> t val cons : elt -> t -> t val snoc : t -> elt -> t @@ -18,6 +22,9 @@ module type S = val fold : ( elt -> 'a -> 'a) -> t -> 'a -> 'a val length : t -> int val serialize : string -> Tree.t -> t -> unit + + + end module Count : S with type t = int @@ -37,3 +44,5 @@ type 'a mat = { mutable clist : clist; module Mat : S with type t = Tree.node mat val debug : Tree.node mat -> unit + +module Partial(N : S) : S