Module Mode.Axis

type ('p, 'r) t =
  1. | Areality : ('a comonadic_with, 'a) t
  2. | Forkable : ('areality comonadic_with, Forkable.Const.t) t
  3. | Yielding : ('areality comonadic_with, Yielding.Const.t) t
  4. | Linearity : ('areality comonadic_with, Linearity.Const.t) t
  5. | Statefulness : ('areality comonadic_with, Statefulness.Const.t) t
  6. | Portability : ('areality comonadic_with, Portability.Const.t) t
  7. | Uniqueness : (monadic, Uniqueness.Const.t) t
  8. | Visibility : (monadic, Visibility.Const.t) t
  9. | Contention : (monadic, Contention.Const.t) t
  10. | Staticity : (monadic, Staticity.Const.t) t

('p, 'r) t represents a projection from a product of type 'p to an element of type 'r.

NB: must listed in the order of axis implication. See typemode.ml.

val print : Format.formatter -> ('p, 'r) t -> unit
val eq : ('p, 'r0) t -> ('p, 'r1) t -> ('r0, 'r1) Ocaml_utils.Misc_stdlib.eq option