Up
Module
Comparator
=
Comparator
Signature
type
('a, 'witness) t =
private
{
compare
: 'a -> 'a -> int
;
sexp_of_t
: 'a ->
Sexplib.Sexp.t
;
}
type
('a, 'b) comparator = ('a, 'b)
t
module type
S
= sig .. end
module type
S1
= sig .. end
module
Poly
:
S1
with
type
'a
t
= 'a
module
S_to_S1
(
S
:
S
) :
S1
with
type
'a
t
=
S.t
with
type
comparator_witness
=
S.comparator_witness
module
Make
(
M
: sig .. end) :
S
with
type
t
:=
M.t
Make
creates a
comparator
value and its phantom
comparator_witness
type for a nullary type.
module
Make1
(
M
: sig .. end) :
S1
with
type
'a
t
:= 'a
M.t
Make1
creates a
comparator
value and its phantom
comparator_witness
type for a unary type.