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 -> ...include sig ... endval all : t listval hash_fold_t : Base.Hash.state ‑> t ‑> Base.Hash.stateval hash : t ‑> Base.Hash.hash_valueval t_of_sexp : Base.Sexp.t ‑> tval sexp_of_t : t ‑> Base.Sexp.tval to_int : t ‑> intto_int t is:
Less -> -1
Equal -> 0
Greater -> 1It can be useful when writing a comparison function to allow one to return
Ordering.t values and transform them to ints later.
module Export : sig ... end