Module Modes_lib.Optional

include Per_axis with type 'a wrapped := 'a option
type t = {
  1. locality : Modes_lib__.Modes_lib_intf.Definitions.locality option;
  2. portability : Modes_lib__.Modes_lib_intf.Definitions.portability option;
  3. contention : Modes_lib__.Modes_lib_intf.Definitions.contention option;
  4. statefulness : Modes_lib__.Modes_lib_intf.Definitions.statefulness option;
  5. visibility : Modes_lib__.Modes_lib_intf.Definitions.visibility option;
  6. linearity : Modes_lib__.Modes_lib_intf.Definitions.linearity option;
  7. uniqueness : Modes_lib__.Modes_lib_intf.Definitions.uniqueness option;
  8. yielding : Modes_lib__.Modes_lib_intf.Definitions.yielding option;
  9. forkable : Modes_lib__.Modes_lib_intf.Definitions.forkable option;
  10. staticity : Modes_lib__.Modes_lib_intf.Definitions.staticity option;
}
val sexp_of_t : t -> Sexplib0.Sexp.t
type make_f = {
  1. f : 'a. 'a Modes_lib__.Modes_lib_intf.Definitions.axis -> 'a option;
}
val make : make_f -> t
val get : t -> 'a Modes_lib__.Modes_lib_intf.Definitions.axis -> 'a option
val set : t -> 'a Modes_lib__.Modes_lib_intf.Definitions.axis -> 'a option -> t
val of_modals : Modal.t list -> t

When omitted, axis is filled in with None.