Module DataFlowPrivate
DEPRECATED: Use semmle.code.cpp.dataflow.new.DataFlow
instead.
Import path
import semmle.code.cpp.dataflow.internal.DataFlowPrivate
Predicates
additionalLambdaFlowStep | Extra data-flow steps needed for lambda flow analysis. |
allowParameterReturnInSelf | Holds if flow is allowed to pass from parameter |
clearsContent | Holds if values stored inside content |
compatibleTypes | Holds if |
expectsContent | Holds if the value that is being tracked is expected to be stored inside content |
forceHighPrecision | Holds if access paths with |
getAnOutNode | Gets a node that can read the value returned from |
getContentApprox | Gets an approximated value for content |
getNodeType | Gets the type of |
isArgumentNode | Holds if |
isParameterNode | Holds if |
isUnreachableInCall | |
jumpStep | Holds if data can flow from |
knownSinkModel | |
knownSourceModel | |
lambdaCall | Holds if |
lambdaCreation | Holds if |
localMustFlowStep | |
nodeGetEnclosingCallable | Gets the callable in which this node occurs. |
nodeIsHidden | Holds if |
ppReprType | Gets a string representation of a type returned by |
readStep | Holds if data can flow from |
storeStep | Holds if data can flow from |
typeStrongerThan |
Classes
ArgumentNode | A data flow node that occurs as the argument of a call and is passed as-is to the callable. Arguments that are wrapped in an implicit varargs array creation are not included, but the implicitly created array is. Instance arguments are also included. |
CastNode | A node that performs a type cast. |
DataFlowCall | A function call relevant for data flow. |
OutNode | A data flow node that represents the output of a call at the call site. |
ReturnKind | A return kind. A return kind describes how a value can be returned from a callable. For C++, this is simply a function return. |
ReturnNode | A data flow node that represents a returned value in the called function. |
Aliases
ContentApprox | An approximated |
DataFlowCallable | A C/C++ function [N4140 8.3.5]. Both member functions and non-member functions are included. For example the function |
DataFlowExpr | A C/C++ expression. |
DataFlowSecondLevelScope | The trivial type with a single element. |
DataFlowType | A C/C++ type. |
LambdaCallKind | The trivial type with a single element. |