include Ppx_sexp_conv_lib.Sexpable.S with type t := Make(S1)(S2).t
val t_of_sexp : Sexplib0.Sexp.t -> Make(S1)(S2).tval sexp_of_t : Make(S1)(S2).t -> Sexplib0.Sexp.tinclude Comparable.S with type t := Make(S1)(S2).t
include Base.Comparable.S with type t := Make(S1)(S2).t
include Base.Comparisons.Infix with type t := Make(S1)(S2).t
val (>=) : Make(S1)(S2).t -> Make(S1)(S2).t -> boolval (<=) : Make(S1)(S2).t -> Make(S1)(S2).t -> boolval (=) : Make(S1)(S2).t -> Make(S1)(S2).t -> boolval (>) : Make(S1)(S2).t -> Make(S1)(S2).t -> boolval (<) : Make(S1)(S2).t -> Make(S1)(S2).t -> boolval (<>) : Make(S1)(S2).t -> Make(S1)(S2).t -> boolval equal : Make(S1)(S2).t -> Make(S1)(S2).t -> boolval compare : Make(S1)(S2).t -> Make(S1)(S2).t -> intcompare t1 t2 returns 0 if t1 is equal to t2, a negative integer if t1 is less than t2, and a positive integer if t1 is greater than t2.
val min : Make(S1)(S2).t -> Make(S1)(S2).t -> Make(S1)(S2).tval max : Make(S1)(S2).t -> Make(S1)(S2).t -> Make(S1)(S2).tval ascending : Make(S1)(S2).t -> Make(S1)(S2).t -> intascending is identical to compare. descending x y = ascending y x. These are intended to be mnemonic when used like List.sort ~compare:ascending and List.sort
      ~cmp:descending, since they cause the list to be sorted in ascending or descending order, respectively.
val descending : Make(S1)(S2).t -> Make(S1)(S2).t -> intval between : Make(S1)(S2).t -> low:Make(S1)(S2).t -> high:Make(S1)(S2).t -> boolbetween t ~low ~high means low <= t <= high
val clamp_exn : Make(S1)(S2).t -> min:Make(S1)(S2).t -> max:Make(S1)(S2).t -> Make(S1)(S2).tclamp_exn t ~min ~max returns t', the closest value to t such that between t' ~low:min ~high:max is true.
Raises if not (min <= max).
val clamp : Make(S1)(S2).t -> min:Make(S1)(S2).t -> max:Make(S1)(S2).t -> Make(S1)(S2).t Base.Or_error.tinclude Base.Comparator.S with type t := Make(S1)(S2).t
val comparator : (Make(S1)(S2).t, comparator_witness) Base.Comparator.comparatorval validate_lbound : min:Make(S1)(S2).t Base.Maybe_bound.t -> Make(S1)(S2).t Base.Validate.checkval validate_ubound : max:Make(S1)(S2).t Base.Maybe_bound.t -> Make(S1)(S2).t Base.Validate.checkval validate_bound : min:Make(S1)(S2).t Base.Maybe_bound.t -> max:Make(S1)(S2).t Base.Maybe_bound.t -> Make(S1)(S2).t Base.Validate.checkmodule Replace_polymorphic_compare : sig ... endmodule Map : Map.S with type Key.t = Make(S1)(S2).t with type Key.comparator_witness = comparator_witnessmodule Set : Set.S with type Elt.t = Make(S1)(S2).t with type Elt.comparator_witness = comparator_witness