Module Core_kernel.Maybe_bound
This module extends Base.Maybe_bound with bin_io and with compare functions in the form of As_lower_bound and As_upper_bound modules.
type 'a t= 'a Base.Maybe_bound.t=|Incl of 'a|Excl of 'a|Unbounded
include Bin_prot.Binable.S1 with type 'a t := 'a t
val bin_shape_t : Bin_prot.Shape.t -> Bin_prot.Shape.tval bin_size_t : ('a, 'a t) Bin_prot.Size.sizer1val bin_write_t : ('a, 'a t) Bin_prot.Write.writer1val bin_read_t : ('a, 'a t) Bin_prot.Read.reader1val __bin_read_t__ : ('a, int -> 'a t) Bin_prot.Read.reader1val bin_writer_t : ('a, 'a t) Bin_prot.Type_class.S1.writerval bin_reader_t : ('a, 'a t) Bin_prot.Type_class.S1.readerval bin_t : ('a, 'a t) Bin_prot.Type_class.S1.t
include module type of sig ... end with type 'a t := 'a t
type 'a t= 'a Base__Maybe_bound.t=|Incl of 'a|Excl of 'a|Unbounded
val all : 'a list -> 'a t listval t_of_sexp : (Base.Sexp.t -> 'a) -> Base.Sexp.t -> 'a tval sexp_of_t : ('a -> Base.Sexp.t) -> 'a t -> Base.Sexp.tval map : 'a t -> f:('a -> 'b) -> 'b tval is_lower_bound : 'a t -> of_:'a -> compare:('a -> 'a -> int) -> boolval is_upper_bound : 'a t -> of_:'a -> compare:('a -> 'a -> int) -> boolval interval_contains_exn : lower:'a t -> upper:'a t -> 'a -> compare:('a -> 'a -> int) -> boolval bounds_crossed : lower:'a t -> upper:'a t -> compare:('a -> 'a -> int) -> bool
type interval_comparison= Base__Maybe_bound.interval_comparison=|Below_lower_bound|In_range|Above_upper_bound
val sexp_of_interval_comparison : interval_comparison -> Base.Sexp.tval interval_comparison_of_sexp : Base.Sexp.t -> interval_comparisonval compare_interval_comparison : interval_comparison -> interval_comparison -> intval hash_fold_interval_comparison : Base.Hash.state -> interval_comparison -> Base.Hash.stateval hash_interval_comparison : interval_comparison -> Base.Hash.hash_valueval compare_to_interval_exn : lower:'a t -> upper:'a t -> 'a -> compare:('a -> 'a -> int) -> interval_comparison
module As_lower_bound : sig ... endCompares
tvalues as lower bounds, whereUnboundedis lowest,Incl x < Excl x, and other cases ofIncland/orExclare compared based on'a. IfAs_lower_bound.compare compare t1 t2 <= 0andis_lower_bound t2 ~of_:a ~compare, thenis_lower_bound t1 ~of_:a ~compare. For example, forint As_lower_bound.t:
module As_upper_bound : sig ... endCompares
tvalues as upper bounds, whereUnboundedis highest,Incl x > Excl x, and other cases ofIncland/orExclare compared based on'a. IfAs_upper_bound.compare compare_a t1 t2 <= 0andis_upper_bound t1 ~of_:a ~compare, thenis_upper_bound t2 ~of_:a ~compare. For example, forint As_upper_bound.t:
module Stable : sig ... end