Module Source.Dummy

include TraceElem.S
type t
val compare : t -> t -> int
val call_site : t -> InferIR.CallSite.t
val kind : t -> Kind.t
val make : ?⁠indexes:InferStdlib.IntSet.t -> Kind.t -> InferIR.CallSite.t -> t
val with_callsite : t -> InferIR.CallSite.t -> t
val pp : InferModules.TraceElem.F.formatter -> t -> unit
module Set : InferStdlib.PrettyPrintable.PPSet with type PPSet.elt = t
type spec = {
source : t;

type of the returned source

index : int option;

index of the returned source if Some; return value if None

}
val get : caller_pname:InferIR.Typ.Procname.t -> InferIR.CallSite.t -> InferIR.HilExp.t list -> InferIR.Tenv.t -> spec list

return Some (taint spec) if the call site with the given actuals is a taint source, None otherwise

val get_tainted_formals : InferIR.Procdesc.t -> InferIR.Tenv.t -> (InferIR.Mangled.t * InferIR.Typ.t * t option) list

return each formal of the function paired with either Some(source) if the formal is a taint source, or None if the formal is not a taint source