Alloc.Constinclude Mode_intf.Const
with type t =
(Locality.Const.t,
Linearity.Const.t,
Uniqueness.Const.t,
Portability.Const.t,
Contention.Const.t,
Forkable.Const.t,
Yielding.Const.t,
Statefulness.Const.t,
Visibility.Const.t,
Staticity.Const.t)
modesinclude Mode_intf.Lattice
with type t =
(Locality.Const.t,
Linearity.Const.t,
Uniqueness.Const.t,
Portability.Const.t,
Contention.Const.t,
Forkable.Const.t,
Yielding.Const.t,
Statefulness.Const.t,
Visibility.Const.t,
Staticity.Const.t)
modesval min : tval max : tequal a b is equivalent to le a b && le b a, but defined separately for performance reasons
val print : Format.formatter -> t -> unitval legacy : tmodule Option : sig ... endval is_max : 'a Axis.t -> 'a -> boolval is_min : 'a Axis.t -> 'a -> boolval split : t -> (Monadic.Const.t, Comonadic.Const.t) monadic_comonadicval merge : (Monadic.Const.t, Comonadic.Const.t) monadic_comonadic -> tdiff a b returns None for axes where a and b match, and Some a0 for axes where a is a0 and b isn't.
val close_over : t -> Comonadic.Const.tSimilar to Alloc.close_over but for constants
val partial_apply : t -> Comonadic.Const.tSimilar to Alloc.partial_apply but for constants
val comonadic_to_monadic_min : Comonadic.Const.t -> Monadic.Const.tSimilar to comonadic_to_monadic_min but for constants
val print_axis : 'a Axis.t -> Format.formatter -> 'a -> unitPrints a constant on any axis.