Datatype TNode
IPA type for data flow nodes.
Nodes broadly fall into three categories.
- Control flow nodes: Flow between these is based on use-use flow computed via an SSA analysis.
- Module variable nodes: These represent global variables and act as canonical targets for reads and writes of these.
- Synthetic nodes: These handle flow in various special cases.
Import path
import semmle.python.dataflow.new.internal.DataFlowPublicKnown direct subtypes
Branch types
| TCfgNode | A node corresponding to a control flow node. |
| TFlowSummaryNode | |
| TForbiddenRecursionGuard | An empty, unused node type that exists to prevent unwanted dependencies on data flow nodes. |
| TIterableElementNode | A synthetic node representing that there may be an iterable element for |
| TIterableSequenceNode | A synthetic node representing that an iterable sequence flows to consumer. |
| TModuleVariableNode | A node representing a global (module-level) variable in a specific module. |
| TScopeEntryDefinitionNode | A node corresponding to a scope entry definition. That is, the value of a variable as it enters a scope. |
| TStarPatternElementNode | A synthetic node representing element content in a star pattern. |
| TSynthCaptureNode | A synthetic node representing a captured variable. |
| TSynthCapturedVariablesParameterNode | A synthetic node representing the heap of a function. Used for variable capture. |
| TSynthCompCapturedVariablesArgumentNode | A synthetic node representing the values of variables captured by a comprehension. |
| TSynthCompCapturedVariablesArgumentPostUpdateNode | A synthetic node representing the values of variables captured by a comprehension after the output has been computed. |
| TSynthDictSplatArgumentNode | A synthetic node to capture keyword arguments that are passed to a |
| TSynthDictSplatParameterNode | A synthetic node to allow flow to keyword parameters from a |
| TSynthStarArgsElementParameterNode | A synthetic node to capture positional arguments that are passed to a |
| TSyntheticOrmModelNode | INTERNAL: Do not use. |
| TSyntheticPostUpdateNode | A synthetic node representing the value of an object after a state change. See QLDoc for |
| TSyntheticPreUpdateNode | A synthetic node representing the value of an object before a state change. |
Injectors
| TCfgNode | A node corresponding to a control flow node. |
| TFlowSummaryNode | |
| TForbiddenRecursionGuard | An empty, unused node type that exists to prevent unwanted dependencies on data flow nodes. |
| TIterableElementNode | A synthetic node representing that there may be an iterable element for |
| TIterableSequenceNode | A synthetic node representing that an iterable sequence flows to consumer. |
| TModuleVariableNode | A node representing a global (module-level) variable in a specific module. |
| TScopeEntryDefinitionNode | A node corresponding to a scope entry definition. That is, the value of a variable as it enters a scope. |
| TStarPatternElementNode | A synthetic node representing element content in a star pattern. |
| TSynthCaptureNode | A synthetic node representing a captured variable. |
| TSynthCapturedVariablesParameterNode | A synthetic node representing the heap of a function. Used for variable capture. |
| TSynthCompCapturedVariablesArgumentNode | A synthetic node representing the values of variables captured by a comprehension. |
| TSynthCompCapturedVariablesArgumentPostUpdateNode | A synthetic node representing the values of variables captured by a comprehension after the output has been computed. |
| TSynthDictSplatArgumentNode | A synthetic node to capture keyword arguments that are passed to a |
| TSynthDictSplatParameterNode | A synthetic node to allow flow to keyword parameters from a |
| TSynthStarArgsElementParameterNode | A synthetic node to capture positional arguments that are passed to a |
| TSyntheticOrmModelNode | INTERNAL: Do not use. |
| TSyntheticPostUpdateNode | A synthetic node representing the value of an object after a state change. See QLDoc for |
| TSyntheticPreUpdateNode | A synthetic node representing the value of an object before a state change. |