Module type PulseBaseAddressAttributes.S

type t
include Ppx_compare_lib.Comparable.S with type t := t
val compare : t Base__Ppx_compare_lib.compare
include Ppx_compare_lib.Equal.S with type t := t
val equal : t Base__Ppx_compare_lib.equal
val yojson_of_t : t -> Ppx_yojson_conv_lib.Yojson.Safe.t
type key
val pp : F.formatter -> t -> unit
val empty : t
val filter : (key -> Pulselib.PulseBasicInterface.Attributes.t -> bool) -> t -> t
val filter_with_discarded_addrs : (key -> bool) -> t -> t * Pulselib.PulseBasicInterface.AbstractValue.t list
val find_opt : key -> t -> Pulselib.PulseBasicInterface.Attributes.t option
val always_reachable : key -> t -> t
val java_resource_release : key -> t -> t
val await_awaitable : key -> t -> t
val remove_hack_builder : key -> t -> t
val get_hack_builder : key -> t -> Pulselib.PulseBasicInterface.Attribute.Builder.t option
val csharp_resource_release : key -> t -> t
val in_reported_retain_cycle : key -> t -> t
val fold : (key -> Pulselib.PulseBasicInterface.Attributes.t -> 'a -> 'a) -> t -> 'a -> 'a
val get_closure_proc_name : key -> t -> IR.Procname.t option
val get_copied_into : key -> t -> Pulselib.PulseBasicInterface.Attribute.CopiedInto.t option
val remove_copied_return : key -> t -> t
val get_source_origin_of_copy : key -> t -> Pulselib.PulseBasicInterface.AbstractValue.t option
val is_copied_from_const_ref : key -> t -> bool
val get_returned_from_unknown : key -> t -> Pulselib.PulseBasicInterface.AbstractValue.t list option
val add_dict_contain_const_keys : key -> t -> t
val remove_dict_contain_const_keys : key -> t -> t
val is_dict_contain_const_keys : key -> t -> bool
val get_dict_read_const_keys : key -> t -> Pulselib.PulseBasicInterface.Attribute.ConstKeys.t option
val add_static_type : IR.Typ.Name.t -> key -> t -> t
val get_static_type : t -> key -> IR.Typ.Name.t option
val std_vector_reserve : key -> t -> t
val is_java_resource_released : key -> t -> bool
val is_csharp_resource_released : key -> t -> bool
val is_in_reported_retain_cycle : key -> t -> bool
val is_std_moved : key -> t -> bool
val is_std_vector_reserved : key -> t -> bool
val get_last_lookup : key -> t -> Pulselib.PulseBasicInterface.AbstractValue.t option
val mark_as_end_of_collection : key -> t -> t
val is_end_of_collection : key -> t -> bool
val add_unreachable_at : key -> IBase.Location.t -> t -> t
val add_copied_return : key -> source:key -> is_const_ref:bool -> Pulselib.PulseBasicInterface.Attribute.CopyOrigin.t -> IBase.Location.t -> t -> t
val get_config_usage : key -> t -> Pulselib.PulseBasicInterface.Attribute.ConfigUsage.t option
val get_used_as_branch_cond : key -> t -> (IR.Procname.t * IBase.Location.t * Pulselib.PulseBasicInterface.Trace.t) option
val remove_allocation_attr : key -> t -> t
val remove_taint_attrs : key -> t -> t
val remove_all_must_not_be_tainted : ?kinds:Pulselib.PulseBasicInterface.TaintConfig.Kind.Set.t -> t -> t
val finalize_all_hack_builders : t -> t
val remove_must_be_valid_attr : key -> t -> t
val initialize : key -> t -> t
val get_address_of_stack_variable : key -> t -> (IR.Var.t * IBase.Location.t * Pulselib.PulseBasicInterface.ValueHistory.t) option
val has_unknown_effect : key -> t -> bool
val is_hack_constinit_called : key -> t -> bool