Module DataFlowPrivate
Import path
import semmle.python.dataflow.new.internal.DataFlowPrivate
Imports
DataFlowDispatch | INTERNAL: Do not use. |
IterableUnpacking | The unpacking assignment takes the general form |
MatchUnpacking | There are a number of patterns available for the match statement. Each one transfers data and content differently to its parts. |
StepRelationTransformations | A module for transforming step relations. |
Predicates
additionalLambdaFlowStep | Extra data-flow steps needed for lambda flow analysis. |
allowParameterReturnInSelf | Holds if flow is allowed to pass from parameter |
attributeClearStep | Holds if values stored inside attribute |
attributeReadStep | Holds if |
attributeStoreStep | Holds if |
clearsContent | Holds if values stored inside content |
compatibleTypes | Holds if |
comprehensionStoreStep | Data flows from an element expression in a comprehension to the comprehension. |
dictClearStep | |
dictStoreStep | Data flows from an element of a dictionary to the dictionary at a specific key. |
expectsContent | Holds if the value that is being tracked is expected to be stored inside content |
forReadStep | |
forceHighPrecision | Holds if access paths with |
getCallableScope | Helper for |
getContentApprox | Gets an approximated value for content |
getNodeType | Gets the type of |
isArgumentNode | Holds if |
isExpressionNode | |
isParameterNode | Holds if |
isUnreachableInCall | Holds if the nodes in |
jumpStep | Holds if |
jumpStepNotSharedWithTypeTracker | Set of jumpSteps that are NOT shared with type-tracker implementation. |
jumpStepSharedWithTypeTracker | Set of jumpSteps that are shared with type-tracker implementation. |
knownSinkModel | |
knownSourceModel | |
lambdaCall | Holds if |
lambdaCreation | Holds if |
listStoreStep | Data flows from an element of a list to the list. |
localMustFlowStep | |
neverSkipInPathGraph | Holds if |
nodeGetEnclosingCallable | Gets the callable in which this node occurs. |
nodeIsHidden | Holds if |
readStep | Holds if data can flow from |
readStepCommon | Subset of |
runtimeJumpStep |
|
setStoreStep | Data flows from an element of a set to the set. |
simpleLocalFlowStep | This is the local flow predicate that is used as a building block in global data flow. |
simpleLocalFlowStepForTypetracking | This is the local flow predicate that is used as a building block in type tracking, it does not include steps from flow summaries. |
small_tuple | |
storeStep | Holds if data can flow from |
storeStepCommon | Subset of |
subscriptReadStep | Data flows from a sequence to a subscript of the sequence. |
synthDictSplatParameterNodeReadStep | Reads from the synthetic **kwargs parameter to each keyword parameter. |
synthStarArgsElementParameterNodeStoreStep | |
tupleStoreStep | Data flows from an element of a tuple to the tuple at a specific index. |
typeStrongerThan | |
variableCaptureLocalFlowStep |
Classes
CastNode | A node that performs a type cast. |
DataFlowType | |
NodeRegion | |
NonSyntheticPostUpdateNode | |
PostUpdateNodeImpl | |
SynthCaptureNode | A synthesized data flow node representing a closure object that tracks captured variables. |
SynthDictSplatArgumentNode | A (synthetic) data-flow node that represents all keyword arguments, as if they had been passed in a |
SynthDictSplatParameterNode | A synthetic data-flow node to allow flow to keyword parameters from a |
SynthStarArgsElementParameterNode | A (synthetic) data-flow parameter node to capture all positional arguments that should be passed to the |
SyntheticPostUpdateNode | |
SyntheticPreUpdateNode |
Datatypes
Modules
LocalFlow | A module to compute local flow. |
Orm | INTERNAL: Do not use. |
StepRelationTransformations | A module for transforming step relations. |
Aliases
ContentApprox | An approximated |
DataFlowExpr | An expression |
DataFlowSecondLevelScope | The trivial type with a single element. |
LambdaCallKind | The trivial type with a single element. |
VariableCapture | Provides logic related to captured variables. |