Pulselib.PulseInvalidation
val pp_std_vector_function : F.formatter -> std_vector_function -> unit
val pp_map_type : F.formatter -> map_type -> unit
val pp_map_function : F.formatter -> map_function -> unit
type t =
| CFree
| ComparedToNullInThisProcedure of IBase.Location.t
| ConstantDereference of IR.IntLit.t
| CppDelete
| CppDeleteArray
| EndIterator
| FClose
| GoneOutOfScope of IR.Pvar.t * IR.Typ.t
| OptionalEmpty
| StdVector of std_vector_function
| CppMap of map_type * map_function
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 pp : F.formatter -> t -> unit
val describe : F.formatter -> t -> unit
val suggest : t -> string option
type must_be_valid_reason =
| BlockCall
| InsertionIntoCollectionKey
| InsertionIntoCollectionValue
| SelfOfNonPODReturnMethod of IR.Typ.t
| NullArgumentWhereNonNullExpected of PulseCallEvent.t * int option
val compare_must_be_valid_reason :
must_be_valid_reason ->
must_be_valid_reason ->
int
val equal_must_be_valid_reason :
must_be_valid_reason ->
must_be_valid_reason ->
bool
val pp_must_be_valid_reason :
F.formatter ->
must_be_valid_reason option ->
unit
val issue_type_of_cause :
latent:bool ->
t ->
must_be_valid_reason option ->
IBase.IssueType.t