Merged from branch stable-succint-refactor
[SXSI/xpathcomp.git] / tree.mli
index 060e086..a2ad7f3 100644 (file)
--- a/tree.mli
+++ b/tree.mli
@@ -12,17 +12,45 @@ sig
   type t
   val parse_xml_uri : string -> t
   val parse_xml_string : string -> t
+  val save : t -> string -> unit
+  val load : ?sample:int -> string -> t
+  val tag_pool : t -> Tag.pool
   val string : t -> string
   val descr : t -> descr
+  val is_node : t -> bool
   val left : t -> t
   val right : t -> t
+  val first_child : t -> t
+  val next_sibling : t -> t
+  val parent : t -> t
   val id : t -> int
   val tag : t -> Tag.t
   val print_xml_fast : out_channel -> t -> unit
   val compare : t -> t -> int
   val equal : t -> t -> bool
+  module DocIdSet : 
+  sig 
+    include Set.S  
+  end with type elt = string_content
+  val string_below : t -> string_content -> bool
+  val contains : t -> string -> DocIdSet.t
+  val contains_old : t -> string -> bool
+  val dump : t -> unit 
+  val get_string : t -> string_content -> string
+  val has_tagged_desc : t -> Tag.t -> bool
+  val has_tagged_foll : t -> Tag.t -> bool
+  val tagged_desc : t -> Tag.t -> t
+  val tagged_foll : t -> Tag.t -> t
+  val tagged_next : t -> Tag.t -> t
+  val subtree_tags : t -> Tag.t -> int
 end
 
 module Binary : BINARY
 
-val dump : Binary.t -> unit
+IFDEF DEBUG
+THEN
+module DEBUGTREE : sig
+  include BINARY
+  val print_stats : Format.formatter -> unit
+end
+ENDIF