Module DataFlowUtil
Provides C++-specific definitions for use in the data flow library.
Import path
import semmle.code.cpp.ir.dataflow.internal.DataFlowUtil
Imports
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 reference through a non-union instance field. |
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. |
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. |
SsaPhiInputNode | INTERNAL: Do not use. |
SsaPhiNode | 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. |
Predicate signatures
guardChecksSig | Holds if the guard |
instructionGuardChecksSig | Holds if the guard |