Pulselib.PulseAccessmodule AbstractValue = PulseAbstractValueThe various kind of possible ways to access memory addresses and values. Can be used for edges in a memory graph representation or to represent values as access paths.
type ('fieldname, 'array_index) access_ = | FieldAccess of 'fieldname| ArrayAccess of IR.Typ.t * 'array_index| Dereferencefor internal use only, prefer using access
type 'array_index access = (IR.Fieldname.t, 'array_index) access_val yojson_of_access :
('array_index -> Ppx_yojson_conv_lib.Yojson.Safe.t) ->
'array_index access ->
Ppx_yojson_conv_lib.Yojson.Safe.tval pp_access :
(F.formatter -> 'array_index -> unit) ->
F.formatter ->
'array_index access ->
unitmodule type S = sig ... endinclude S with type key := AbstractValue.tinclude IStdlib.PrettyPrintable.PrintableEquatableOrderedType
with type t = AbstractValue.t accessinclude IStdlib.IStd.Caml.Set.OrderedType with type t = AbstractValue.t accesstype t = AbstractValue.t accessinclude IStdlib.PrettyPrintable.PrintableEquatableType with type t := tinclude IStdlib.PrettyPrintable.PrintableType with type t := tval pp : IStdlib.PrettyPrintable.F.formatter -> t -> unitval canonicalize : get_var_repr:(AbstractValue.t -> AbstractValue.t) -> t -> tval yojson_of_t : t -> Yojson.Safe.t