package core
Module Date.OptionSource
type value := tinclude Bin_prot.Binable.S_local with type t := t
include Bin_prot.Binable.S_local_only_functions with type t := t
include Bin_prot.Binable.S_only_functions with type t := t
This function only needs implementation if t exposed to be a polymorphic variant. Despite what the type reads, this does *not* produce a function after reading; instead it takes the constructor tag (int) before reading and reads the rest of the variant t afterwards.
include Ppx_hash_lib.Hashable.S with type t := t
include Sexplib0.Sexpable.S with type t := t
include Immediate_option_intf.S with type value := value and type t := t
include Immediate_option_intf.S_without_immediate
with type t := t
with type value := value
include Ppx_compare_lib.Comparable.S with type t := t
include Immediate_option_intf.S_without_immediate_plain
with type t := t
with type value := value
Constructors analogous to None and Some. If not (some_is_representable x) then some x may raise or return none.
For some representations of immediate options, the encodings of none and some overlap. For these representations, some_is_representable value = false if value cannot be represented as an option. For example, Int.Option uses min_value to represent none. For other representations, some_is_representable always returns true.
value (some x) ~default = x and value none ~default = default.
value_exn (some x) = x. value_exn none raises. Unlike Option.value_exn, there is no ?message argument, so that calls to value_exn that do not raise also do not have to allocate.
unchecked_value (some x) = x. unchecked_value none returns an unspecified value. unchecked_value t is intended as an optimization of value_exn t when is_some t is known to be true.
include Comparable.S_plain with type t := t
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).
module Map :
Map.S_plain
with type Key.t = t
with type Key.comparator_witness = comparator_witnessmodule Set :
Set.S_plain
with type Elt.t = t
with type Elt.comparator_witness = comparator_witness