Module Modes_lib.Nonmodals

type t = {
  1. externality : Modes_lib__.Modes_lib_intf.Definitions.externality;
  2. nullability : Modes_lib__.Modes_lib_intf.Definitions.nullability;
  3. separability : Modes_lib__.Modes_lib_intf.Definitions.separability;
}
val sexp_of_t : t -> Sexplib0.Sexp.t
include Lattice with type t := t
val top : t
val bottom : t
val join : t -> t -> t
val meet : t -> t -> t
val le : t -> t -> bool
val equal : t -> t -> bool
val of_nonmodals : Nonmodal.t list -> t

When omitted, axis is filled in with default value on that jkind axis.

val to_nonmodals : t -> Nonmodal.t list
val to_nonmodals_explicit : t -> Nonmodal.t list
type make_f = {
  1. f : 'a. 'a nonmodal_axis -> 'a;
}
val make : make_f -> t
val get : t -> 'a nonmodal_axis -> 'a
val set : t -> 'a nonmodal_axis -> 'a -> t