following Okasaki
type 'a sequence
= ('a ‑> unit) ‑> unit
type 'a gen
= unit ‑> 'a option
type 'a klist
= unit ‑> [ `Nil | `Cons of 'a * 'a klist ]
type 'a ktree
= unit ‑> [ `Nil | `Node of 'a * 'a ktree list ]
type 'a printer
= Format.formatter ‑> 'a ‑> unit
module type PARTIAL_ORD : sig ... end
module type TOTAL_ORD : sig ... end
module type S : sig ... end
module Make : functor (E : PARTIAL_ORD) -> S with type elt = E.t
module Make_from_compare : functor (E : TOTAL_ORD) -> S with type elt = E.t
A convenient version of Make that take a TOTAL_ORD instead of a partially ordered module. It allow to directly pass modules that implement compare without implementing leq explicitly
Make
TOTAL_ORD
compare
leq