MusteqDomain.Fmodule F = CilType.Fieldinfomodule I = Basetype.CilExpinclude module type of struct include Offset.Exp endinclude Offset.Printable with type idx = GoblintCil.expinclude Printable.S with type t = idx Offset_intf.offstype t = idx Offset_intf.offsval hash : t -> intval show : t -> stringval printXml : 'a BatInnerIO.output -> t -> unitval to_yojson : t -> Yojson.Safe.tval tag : t -> intUnique ID, given by HConsed, for context identification in witness
val arbitrary : unit -> t QCheck.arbitraryval is_definite : t -> boolWhether offset has only definite integer indexing (and fields).
val contains_index : t -> boolWhether offset contains any indexing.
val to_exp : t -> GoblintCil.exp Offset_intf.offsConvert to Goblint offset with GoblintCil.exp indices.
val to_cil_offset : t -> GoblintCil.offsetVersion of to_cil which drops indices for ArrayDomain.
val cmp_zero_offset : t -> [ `MustZero | `MustNonzero | `MayZero ]Compare offset to zero offset.
Zero indices and first fields of a struct are in the same physical memory location as the outer object.
val type_of : base:GoblintCil.typ -> t -> GoblintCil.typType of the offset on the base type.
val of_cil : GoblintCil.offset -> tConvert from CIL offset.
val to_cil : t -> GoblintCil.offsetConvert to CIL offset.
val kill : Basetype.Variables.t -> t -> tval real_region : t -> 'a -> boolval occurs :
Basetype.Variables.t ->
[< `Field of 'b * 'a | `Index of GoblintCil.exp * 'a | `NoOffset ] as 'a ->
bool