Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
The name registry.
Names of symbols must be unique as the name is used as a witness of authenticity of the sort. Once obtained, the name should be kept secret beyond the module signature.
See the Example section of the Sort
module documentation for more information.
val declare : ?package:string -> string -> name
declare ?package name
declares a new name
.
The declared name must be unique to the package
. If such name is already declared in the package
, then the declaration fails.
include Base.Comparable.S with type t := t
include Base.Comparisons.S with type t := t
compare 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
.
ascending
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.
clamp_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 : t -> min:t -> max:t -> t Base.Or_error.t
include Base.Comparator.S with type t := t
val comparator : (t, comparator_witness) Base.Comparator.comparator
val validate_lbound : min:t Base.Maybe_bound.t -> t Base.Validate.check
val validate_ubound : max:t Base.Maybe_bound.t -> t Base.Validate.check
val validate_bound :
min:t Base.Maybe_bound.t ->
max:t Base.Maybe_bound.t ->
t Base.Validate.check