Class TranslatedElement
Represents an AST node for which IR needs to be generated.
In most cases, there is a single TranslatedElement
for each AST node.
However, when a single AST node performs two separable operations (e.g.
a VariableAccess
that is also a load), there may be multiple
TranslatedElement
nodes for a single AST node.
Import path
import semmle.code.cpp.ir.implementation.raw.internal.TranslatedElement
Direct supertypes
Known direct subtypes
Predicates
getAChild | Get the immediate child elements of this element. |
getALastInstruction | Gets an instruction within this |
getALastInstructionInternal | Gets an instruction within this |
getAST | DEPRECATED: Alias for getAst |
getAst | Gets the AST node being translated. |
getChild | Gets the immediate child element of this element. The |
getChildSuccessor | Gets the successor instruction to which control should flow after the child element specified by |
getChildSuccessorInternal | Gets the successor instruction to which control should flow after the child element specified by |
getExceptionSuccessorInstruction | Gets the instruction to which control should flow if an exception is thrown within this element. This will generally return first |
getFirstDestructorCallIndex | Gets the child index of the first destructor call that should be executed after this |
getFirstInstruction | Get the first instruction to be executed in the evaluation of this element when the edge kind is |
getFunction | Gets the |
getId | Gets the an identifier string for the element. This id is unique within the scope of the element’s function. |
getInstruction | Gets the instruction generated by this element with tag |
getInstructionBuiltInOperation | If the instruction specified by |
getInstructionConstantValue | If the instruction specified by |
getInstructionElementSize | If the instruction specified by |
getInstructionExceptionType | If the instruction specified by |
getInstructionField | If the instruction specified by |
getInstructionFunction | If the instruction specified by |
getInstructionIndex | If the instruction specified by |
getInstructionInheritance | If the instruction specified by |
getInstructionMemoryOperandType | Gets the type of the memory operand specified by |
getInstructionOperandSize | Gets the size of the memory operand specified by |
getInstructionRegisterOperand | Gets the instruction whose result is consumed as an operand of the instruction specified by |
getInstructionStringLiteral | If the instruction specified by |
getInstructionSuccessor | Gets the successor instruction of the instruction that was generated by this element for tag |
getInstructionSuccessorInternal | Gets the successor instruction of the instruction that was generated by this element for tag |
getInstructionVariable | If the instruction specified by |
getLastChild | |
getLocation | Gets the location of this element. |
getParent | Gets the parent element of this element. |
getPrimaryInstructionForSideEffect | Gets the primary instruction for the side effect instruction that was generated by this element for tag |
getTempVariable | Gets the temporary variable generated by this element with tag |
handlesDestructorsExplicitly | Holds if this |
hasAnImplicitDestructorCall | Holds if this element has implicit destructor calls that should follow it. |
hasInstruction | Holds if this element generates an instruction with opcode |
hasTempVariable | Holds if this element generates a temporary variable with type |
needsUnknownOpaqueType | Holds if the generated IR refers to an opaque type with size |
toString |