module type S =sig
..end
module Foo : sig
type t = ...
include Comparable.S with type t := t
end
Then use Comparable.Make
in the struct (see comparable.mli for an example).
include Comparable_intf.S_common
module Map:Core_map.S
with type Key.t = t
with type Key.comparator_witness = comparator_witness
module Set:Core_set.S
with type Elt.t = t
with type Elt.comparator_witness = comparator_witness