TraceTests.MockTrace
module Source : sig ... end
module Sink : sig ... end
module Sanitizer : Absint.Sanitizer.S
val get_report :
Source.t ->
Sink.t ->
Sanitizer.t list ->
IBase.IssueType.t option
val bottom : t
val is_bottom : t -> bool
module Sources : sig ... end
module Sinks = Sink.Set
module Passthroughs = Absint.Passthrough.Set
type path =
Passthroughs.t
* (Source.t * Passthroughs.t) list
* (Sink.t * Passthroughs.t) list
type report = {
issue : IBase.IssueType.t;
path_source : Source.t;
path_sink : Sink.t;
path_passthroughs : Passthroughs.t;
}
val passthroughs : t -> Passthroughs.t
val get_reports : ?cur_site:Absint.CallSite.t -> t -> report list
val get_reportable_paths :
?cur_site:Absint.CallSite.t ->
t ->
trace_of_pname:(IR.Procname.t -> t) ->
path list
val of_footprint : Absint.AccessPath.Abs.t -> t
val add_sanitizer : Sanitizer.t -> t -> t
val get_footprint_indexes : t -> IStdlib.IntSet.t
val append : t -> t -> Absint.CallSite.t -> t
val pp : Absint__TaintTrace.F.formatter -> t -> unit
val pp_path : IR.Procname.t -> Absint__TaintTrace.F.formatter -> path -> unit