Module DataFlowUtil
Provides C++-specific definitions for use in the data flow library.
Import path
import semmle.code.cpp.ir.dataflow.internal.DataFlowUtilImports
| Cached | |
| ExprFlowCached | INTERNAL: Do not use. |
| ExprNodes | Provides the classes |
| RawIndirectNodes |
Predicates
| conversionFlow | Holds if |
| convertedExprNode | Gets the |
| definitionByReferenceNodeFromArgument | Gets the |
| exprNode | Gets the |
| getARuntimeTarget | Gets a function that may be called by |
| getTypeImpl | INTERNAL: Do not use. |
| hasInstructionAndIndex | |
| hasOperandAndIndex | |
| instructionNode | Gets the node corresponding to |
| localExprFlow | Holds if data can flow from |
| localFlow | Holds if data flows from |
| localInstructionFlow | Holds if data can flow from |
| operandNode | Gets the node corresponding to |
| parameterNode | Gets the |
| repeatStars | Gets a string consisting of |
| stripPointer | INTERNAL: Do not use. |
| uninitializedNode | DEPRECATED: See UninitializedNode. |
| variableNode | Gets the |
Classes
| AdditionalCallTarget | A unit class for adding additional call steps. |
| BodyLessParameterNodeImpl | INTERNAL: do not use. |
| Content | A description of the way data may be stored inside an object. Examples include instance fields, the contents of a collection object, or the contents of an array. |
| ContentSet | An entity that represents a set of |
| DefinitionByReferenceNode | A node that represents the value of a variable after a function call that may have changed the variable because it’s passed by reference. |
| DirectParameterNode | An explicit positional parameter, including |
| ElementContent | A |
| ExplicitParameterNode | |
| FieldAddress | An operand that is defined by a |
| FieldContent | A |
| FinalGlobalValue | INTERNAL: do not use. |
| FinalParameterNode | INTERNAL: do not use. |
| FlowSummaryNode | A data-flow node used to model flow summaries. That is, a dataflow node that is synthesized to represent a parameter, return value, or other part of a models-as-data modeled function. |
| IndirectArgumentOutNode | INTERNAL: do not use. |
| IndirectParameterNode | INTERNAL: do not use. |
| IndirectReturnNode | INTERNAL: do not use. |
| IndirectReturnOutNode | INTERNAL: do not use. |
| InitialGlobalValue | INTERNAL: do not use. |
| InstructionDirectParameterNode | INTERNAL: Do not use. |
| InstructionNode | An instruction, viewed as a node in a data flow graph. |
| Node | A node in a data flow graph. |
| NonUnionFieldContent | A reference through a non-union instance field. |
| OperandNode | An operand, viewed as a node in a data flow graph. |
| ParameterNode | The value of a parameter at function entry, viewed as a node in a data flow graph. This includes both explicit parameters such as |
| PostFieldUpdateNode | INTERNAL: do not use. |
| PostUpdateNode | A node associated with an object after an operation that might have changed its state. |
| PostUpdateNodeImpl | INTERNAL: Do not use. |
| SideEffectOperandNode | INTERNAL: do not use. |
| SsaIteratorNode | INTERNAL: do not use. |
| SsaSynthNode | INTERNAL: do not use. |
| SummaryParameterNode | A parameter node that is part of a summary. |
| SummaryPostUpdateNode | A |
| ThisParameterInstructionNode | An implicit |
| UninitializedNode | The value of an uninitialized local variable, viewed as a node in a data flow graph. |
| UnionContent | A reference through an instance field of a union. |
| VariableNode | A |
Modules
| BarrierGuard | Provides a set of barrier nodes for a guard that validates an expression. |
| ExprFlowCached | INTERNAL: Do not use. |
| InstructionBarrierGuard | Provides a set of barrier nodes for a guard that validates an instruction. |
| Ssa | A module that provides static single assignment (SSA) information. |
Predicate signatures
| guardChecksSig | Holds if the guard |
| instructionGuardChecksSig | Holds if the guard |