Module UnionDomain.Simple

Parameters

module Values : Arg

Signature

include sig ... end
type t = Field.t * Values.t
val is_top : t -> bool
val top : unit -> t
val is_bot : t -> bool
val bot : unit -> t
val narrow : t -> t -> t
val widen : t -> t -> t
val join : t -> t -> t
val leq : t -> t -> bool
val expand_fst : bool
val expand_snd : bool
val equal : t -> t -> Ppx_deriving_runtime.bool
val compare : t -> t -> Ppx_deriving_runtime.int
val hash : t -> int
val relift : t -> t
val tag : 'a -> 'b
val show : (Field.t * Values.t) -> string
val name : unit -> string
val pretty : unit -> (Field.t * Values.t) -> Printable.Pretty.doc
val printXml : 'a BatInnerIO.output -> (Field.t * Values.t) -> unit
val to_yojson : (Field.t * Values.t) -> [> `Assoc of (string * Yojson.Safe.t) list ]
val arbitrary : unit -> (Field.t * Values.t) QCheck.arbitrary
val pretty_diff : unit -> (t * t) -> Lattice.Pretty.doc
type value = Values.t
val meet : ([> `Bot | `Lifted of CilType.Fieldinfo.t | `Top ] as 'a * Values.t) -> ('b * Values.t) -> 'c * Values.t
val invariant : value_invariant: (offset:GoblintCil.Cil.offset -> lval:GoblintCil.Cil.lval -> Values.t -> [> `Top ] as 'a) -> offset:GoblintCil.Cil.offset -> lval:GoblintCil.Cil.lval -> ([< `Bot | `Lifted of GoblintCil.fieldinfo | `Top ] * Values.t) -> 'b