package core_kernel
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=e37370bad978cfb71fdaf2b1a25ab1506b98ef0b91e0dbd189ffd9d853245ce2
doc/core_kernel.flags/Flags/Make/index.html
Module Flags.Make
Source
Flags.Make
builds a new flags module. If there is an error in the known
flags, it behaves as per on_error
.
We expose type t = int
in the result of Flags.Make
so that one can easily use flag constants as values of the flag type without having to coerce them. It is typical to hide the t = int
in another signature S
.
Parameters
Signature
consistent with subset
include Core.Comparable.S with type t := t
include Base.Comparable.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 comparator : (t, comparator_witness) Base__.Comparator.comparator
module Map :
Core.Map.S
with type Key.t = t
with type Key.comparator_witness = comparator_witness
module Set :
Core.Set.S
with type Elt.t = t
with type Elt.comparator_witness = comparator_witness
set difference. Although we use operators +
and -
, they do not satisfy the usual arithmetic equations, e.g. x - y = x + (empty - y)
does not hold.