type t = [ | `NoOffset| `Field of
GoblintCil.fieldinfo
* (GoblintCil.fieldinfo, IndexDomain.t) Goblint_lib__Lval.offs| `Index of
IndexDomain.t * (GoblintCil.fieldinfo, IndexDomain.t) Goblint_lib__Lval.offs
]val show_group : group -> 'aval to_group : 'a -> 'b optionval arbitrary : unit -> 'aval is_first_field : GoblintCil.fieldinfo -> boolval cmp_zero_offset : t -> [ `MayZero | `MustNonzero | `MustZero ]val equal : t -> t -> boolval show :
([< `Field of GoblintCil.fieldinfo * 'a
| `Index of IndexDomain.t * 'a
| `NoOffset ] as 'a) ->
stringval pretty : unit -> t -> Goblint_lib__Printable.Pretty.docval to_yojson : t -> [> `String of string ]val pretty_diff : unit -> (t * t) -> GoblintCil.Pretty.docval hash :
([< `Field of GoblintCil.fieldinfo * 'a | `Index of 'b * 'a | `NoOffset ] as 'a) ->
intval name : unit -> stringval from_offset : 'a -> 'aval is_definite :
([< `Field of 'b * 'a | `Index of IndexDomain.t * 'a | `NoOffset ] as 'a) ->
boolval add_offset :
([< `Field of 'b * 'a | `Index of 'c * 'a | `NoOffset ] as 'a) ->
([> `Field of 'b * 'd | `Index of 'c * 'd ] as 'd) ->
'dval compare : t -> t -> intval to_cil_offset : t -> GoblintCil.offsetval merge : [ `Join | `Meet | `Narrow | `Widen ] -> t -> t -> tval drop_ints :
([< `Field of 'b * 'a | `Index of 'c * 'a | `NoOffset ] as 'a) ->
[> `Field of 'b * 'd | `Index of IndexDomain.t * 'd | `NoOffset ] as 'd