# Module type Pqueue.MinPoly

    module type MinPoly = sig .. end

Output signature of the functor `Pqueue.MakeMinPoly`.

    type 'a t

    type 'a elt

    val create : unit -> 'a t

    val length : 'a t -> int

    val is_empty : 'a t -> bool

    val add : 'a t -> 'a elt -> unit

    val add_iter : 'a t ->
           (('a elt -> unit) -> 'x -> unit) -> 'x -> unit

    val min_elt : 'a t -> 'a elt option

    val get_min_elt : 'a t -> 'a elt

    val pop_min : 'a t -> 'a elt option

    val remove_min : 'a t -> unit

    val clear : 'a t -> unit

    val copy : 'a t -> 'a t

    val of_array : 'a elt array -> 'a t

    val of_list : 'a elt list -> 'a t

    val of_iter : (('a elt -> unit) -> 'x -> unit) -> 'x -> 'a t

    val iter_unordered : ('a elt -> unit) -> 'a t -> unit

    val fold_unordered : ('acc -> 'a elt -> 'acc) ->
           'acc -> 'a t -> 'acc