Class PathSummary
A summary of an inter-procedural data flow path.
The summary includes a start flow label and an end flow label, and keeps track of
whether the path contains any call steps from an argument of a function call to the
corresponding parameter, and/or any return steps from the return
statement of a
function to a call of that function.
We only want to build properly matched call/return sequences, so if a path has both call steps and return steps, all return steps must precede all call steps.
Import path
import semmle.javascript.dataflow.internal.FlowSteps
Direct supertypes
Predicates
append | Gets the summary for the path obtained by appending |
appendValuePreserving | Gets the summary for the path obtained by appending |
getEndLabel | Gets the flow label describing the value at the end of this flow path. |
getStartLabel | Gets the flow label describing the value at the start of this flow path. |
hasCall | Indicates whether the path represented by this summary contains any unmatched call steps. |
hasReturn | Indicates whether the path represented by this summary contains any unmatched return steps. |
isLevel | Holds if the path represented by this summary contains no unmatched call or return steps. |
prepend | Gets the summary for the path obtained by appending |
toString | Gets a textual representation of this path summary. |