type 'a t
val create : cmp:('a ‑> 'a ‑> int) ‑> 'a t
create a min-heap on type 'a
val push : 'a t ‑> 'a ‑> unit
val pop : 'a t ‑> 'a Async.Deferred.t
val length : _ t ‑> int
val iter_and_clear : 'a t ‑> f:('a ‑> unit) ‑> unit
val clear : 'a t ‑> unit