Fix stupid bug with Tag indices
[SXSI/xpathcomp.git] / tree.mli
1 (******************************************************************************)
2 (*  SXSI : XPath evaluator                                                    *)
3 (*  Kim Nguyen (Kim.Nguyen@nicta.com.au)                                      *)
4 (*  Copyright NICTA 2008                                                      *)
5 (*  Distributed under the terms of the LGPL (see LICENCE)                     *)
6 (******************************************************************************)
7 module type BINARY =
8 sig
9   type node_content
10   type string_content
11   type descr = Nil| Node of node_content | String of string_content 
12   type t
13   val parse_xml_uri : string -> t
14   val parse_xml_string : string -> t
15   val tag_pool : t -> Tag.pool
16   val string : t -> string
17   val descr : t -> descr
18   val left : t -> t
19   val right : t -> t
20   val parent : t -> t
21   val id : t -> int
22   val tag : t -> Tag.t
23   val print_xml_fast : out_channel -> t -> unit
24   val compare : t -> t -> int
25   val equal : t -> t -> bool
26   module DocIdSet : Set.S with type elt = string_content
27   val string_below : t -> string_content -> bool
28   val contains : t -> string -> DocIdSet.t
29   val contains_old : t -> string -> bool
30   val dump : t -> unit 
31 end
32
33 module Binary : BINARY
34
35 module DEBUGTREE : sig
36   include BINARY
37   val print_stats : Format.formatter -> unit
38 end