An incarnation of an interval map where the key type has been wrapped
with Left_boundary.t
.
The majority of the operations are further defined/explained in Operations.
module Left_boundary : sig ... end
include S with type Key.t = Left_boundary.t
module Key : Core_kernel.Comparator.S with type t = Left_boundary.t
module Interval : sig ... end
include sig ... end
val t_of_sexp : (Sexplib.Sexp.t ‑> 'a) ‑> Sexplib.Sexp.t ‑> 'a t
val sexp_of_t : ('a ‑> Sexplib.Sexp.t) ‑> 'a t ‑> Sexplib.Sexp.t
include Core_kernel.Applicative.S with type a t := a t
val return : 'a ‑> 'a t
module Applicative_infix : sig ... end
include Core_kernel.Monad.S with type a t := a t
include Base__.Monad_intf.S_without_syntax with type a t := a t
type 'a t
A monad is an abstraction of the concept of sequencing of computations. A value of type 'a monad represents a computation that returns a value of type 'a.
include Base__.Monad_intf.Infix with type a t := a t
module Monad_infix : Base__.Monad_intf.Infix with type a t := a t
val create : left_of_leftmost:'a ‑> value_right_of:(Key.t, 'a, Key.comparator_witness) Core_kernel.Map.t ‑> 'a t
val always : 'a ‑> 'a t
val remove_changes_within : 'v t ‑> Interval.t ‑> 'v t
val set_within : 'v t ‑> Interval.t ‑> 'v ‑> 'v t
val map_within : 'v t ‑> Interval.t ‑> f:('v ‑> 'v) ‑> 'v t
val construct_preimage : 'v t ‑> ('v * Interval.t) Core_kernel.Sequence.t