module type S =sig..end
type elt
type t
val empty : tval is_empty : t -> boolexception Empty
val merge : t -> t -> tval insert : elt -> t -> tval add : t -> elt -> tCCHeap.S.insertval filter : (elt -> bool) -> t -> tval find_min : t -> elt optionval find_min_exn : t -> elt
val take : t -> (t * elt) optionNone if the heap is emptyval take_exn : t -> t * elt
val iter : (elt -> unit) -> t -> unitval fold : ('a -> elt -> 'a) -> 'a -> t -> 'aval size : t -> int
The interface of of_gen, of_seq, of_klist
has changed
val to_list : t -> elt list
val add_list : t -> elt list -> tval of_list : elt list -> t
val add_seq : t -> elt CCHeap.sequence -> tval of_seq : elt CCHeap.sequence -> t
val to_seq : t -> elt CCHeap.sequence
val add_klist : t -> elt CCHeap.klist -> tval of_klist : elt CCHeap.klist -> t
val to_klist : t -> elt CCHeap.klist
val add_gen : t -> elt CCHeap.gen -> tval of_gen : elt CCHeap.gen -> t
val to_gen : t -> elt CCHeap.gen
val to_tree : t -> elt CCHeap.ktree
val print : ?sep:string -> elt CCHeap.printer -> t CCHeap.printer