val is_root : node -> bool
val is_nil : node -> bool
-type unordered_set
+type tag_list
-val unordered_set_of_set : Ptset.Int.t -> unordered_set
+val tag_list_of_set : Ptset.Int.t -> tag_list
val first_child : t -> node -> node
val first_element : t -> node -> node
val tagged_child : t -> node -> Tag.t -> node
-val select_child : t -> node -> unordered_set -> node
+val select_child : t -> node -> tag_list -> node
val next_sibling : t -> node -> node
val prev_sibling : t -> node -> node
val next_element : t -> node -> node
-val next_node_before : t -> node -> node -> node
-val tagged_following_sibling : t -> node -> Tag.t -> node
-val select_following_sibling : t -> node -> unordered_set -> node
+val tagged_sibling : t -> node -> Tag.t -> node
+val select_sibling : t -> node -> tag_list -> node
val tagged_descendant : t -> node -> Tag.t -> node
val tagged_next : t -> node -> Tag.t -> node
-val select_descendant : t -> node -> unordered_set -> node
+val select_descendant : t -> node -> tag_list -> node
val tagged_following_before : t -> node -> Tag.t -> node -> node
-val select_following_before : t -> node -> unordered_set -> node -> node
+val select_following_before : t -> node -> tag_list -> node -> node
val parent : t -> node -> node
-val binary_parent : t -> node -> node
val is_first_child : t -> node -> bool
val is_right_descendant : t -> node -> node -> bool
val full_text_equals : t -> string -> node array
val full_text_contains : t -> string -> node array
+
+type bit_vector
+val bit_vector_create : int -> bit_vector
+val bit_vector_unsafe_set : bit_vector -> int -> bool -> unit
+val bit_vector_unsafe_get : bit_vector -> int -> bool
+
+val reinit : unit -> unit
+
+type tree_pointer
+val get_tree_pointer : t -> tree_pointer