Base.Ordering
Ordering
is intended to make code that matches on the result of a comparison more concise and easier to read.
For example, instead of writing:
let r = compare x y in
if r < 0 then
...
else if r = 0 then
...
else
...
you could simply write:
match Ordering.of_int (compare x y) with
| Less -> ...
| Equal -> ...
| Greater -> ...
val all : t list
val hash_fold_t : Hash.state -> t -> Hash.state
val hash : t -> Hash.hash_value
include Sexpable.S with type t := t
val t_of_sexp : Sexplib0.Sexp.t -> t
val sexp_of_t : t -> Sexplib0.Sexp.t
include Equal.S with type t := t
val equal : t Equal.equal
val of_int : int -> t
of_int n
is:
Less if n < 0 Equal if n = 0 Greater if n > 0
val to_int : t -> int
to_int t
is:
Less -> -1 Equal -> 0 Greater -> 1
It can be useful when writing a comparison function to allow one to return Ordering.t
values and transform them to int
s later.
module Export : sig ... end