Module Incremental__.Recompute_heap
type t= Incremental__.Types.Recompute_heap.t
val sexp_of_t : t -> Ppx_sexp_conv_lib.Sexp.t
val create : max_height_allowed:int -> tval length : t -> intval max_height_allowed : t -> intmax_height_allowedis the maximumnode.heightallowed fornodeint.It is an error to call
set_max_height_allowed t mif there is anodeintwithnode.height > m.
val set_max_height_allowed : t -> int -> unitval min_height : t -> intmin_height treturns the smallest height of any element int, ormax_height_allowed + 1iflength t = 0.
val add : t -> _ Incremental__.Node.t -> unitadd t nodeshould only be called iff:not (Node.is_in_recompute_heap node) && Node.needs_to_be_computed node && node.height <= max_height_allowed t
val remove : t -> _ Incremental__.Node.t -> unitremove t nodeshould only be called iff:Node.is_in_recompute_heap node && not (Node.needs_to_be_computed node)
val remove_min : t -> Incremental__.Node.Packed.tremove_min tremoves and returns a node intwith minimum height.remove_minshould only be called iflength t > 0.
val increase_height : t -> _ Incremental__.Node.t -> unitincrease_height t nodeshould only be called when:node.height > node.height_in_recompute_heapnode.height <= max_height_allowed tNode.is_in_recompute_heap node
It changes
node.height_in_recompute_heapto equalnode.heightand adjustsnode's position int.