Module DataFlowImplCommon
Import path
import semmle.code.cpp.dataflow.internal.DataFlowImplCommon
Imports
Predicates
accessPathApproxCostLimits |
The cost limits for the |
accessPathCostLimits |
The cost limits for the |
argumentPositionMatch |
Holds if |
checkCallContextCall |
Checks whether |
checkCallContextReturn |
Checks whether |
getLocalCallContext |
Gets the local call context given the call context and the callable that the contexts apply to. |
getNodeDataFlowType |
Gets the type of |
getNodeEnclosingCallable |
Gets the enclosing callable of |
getReturnPosition | |
recordDataFlowCallSite |
Holds if the call context |
resolveCall |
Resolves a call from |
resolveReturn |
Resolves a return from |
Classes
AccessPathFront |
The front of an access path. This is either a head or a nil. |
AccessPathFrontHead | |
AccessPathFrontNil | |
AccessPathFrontOption |
An optional access path front. |
ApproxAccessPathFront |
The front of an approximated access path. This is either a head or a nil. |
ApproxAccessPathFrontHead | |
ApproxAccessPathFrontNil | |
ApproxAccessPathFrontOption |
An optional approximated access path front. |
ArgNode |
A data-flow node that represents a call argument. |
BooleanOption |
An optional Boolean value. |
CallContext |
A call context to restrict the targets of virtual dispatch, prune local flow, and match the call sites of flow into a method with flow out of a method. |
CallContextAny | |
CallContextCall | |
CallContextNoCall | |
CallContextReturn | |
CallContextSomeCall | |
CallContextSpecificCall | |
CastingNode |
A |
DataFlowCallOption |
An optional |
LocalCallContext |
A call context that is relevant for pruning local flow. |
LocalCallContextAny | |
LocalCallContextSpecificCall | |
OutNodeExt |
A node to which data can flow from a call. Either an ordinary out node or a post-update node associated with a call argument. |
ParamNode |
The value of a parameter at function entry, viewed as a node in a data flow graph. |
ParamNodeOption |
An optional |
ParamUpdateReturnKind | |
ReturnCtx |
A return context used to calculate flow summaries in reverse flow. |
ReturnKindExt |
An extended return kind. A return kind describes how data can be returned from a callable. This can either be through a returned value or an updated parameter. |
ReturnNodeExt |
A node from which flow can return to the caller. This is either a regular |
ReturnPosition |
A callable tagged with a relevant return kind. |
TypedContent |
A |
TypedContentApprox |
An approximated |
ValueReturnKind |