clang: clang::SimpleTemporaryObjectConstructionContext Class Reference (original) (raw)

Represents a temporary object that is not constructed for the purpose of being immediately copied/moved by an elidable copy/move-constructor. More...

#include "[clang/Analysis/ConstructionContext.h](ConstructionContext%5F8h%5Fsource.html)"

Static Public Member Functions
static bool classof (const ConstructionContext *CC)
Static Public Member Functions inherited from clang::TemporaryObjectConstructionContext
static bool classof (const ConstructionContext *CC)
Static Public Member Functions inherited from clang::ConstructionContext
static const ConstructionContext * createFromLayers (BumpVectorContext &C, const ConstructionContextLayer *TopLayer)
Consume the construction context layer, together with its parent layers, and wrap it up into a complete construction context.
Friends
class ConstructionContext
Additional Inherited Members
Public Types inherited from clang::ConstructionContext
enum Kind { SimpleVariableKind, CXX17ElidedCopyVariableKind, VARIABLE_BEGIN = SimpleVariableKind , VARIABLE_END = CXX17ElidedCopyVariableKind , SimpleConstructorInitializerKind, CXX17ElidedCopyConstructorInitializerKind, INITIALIZER_BEGIN = SimpleConstructorInitializerKind , INITIALIZER_END = CXX17ElidedCopyConstructorInitializerKind , NewAllocatedObjectKind, SimpleTemporaryObjectKind, ElidedTemporaryObjectKind, TEMPORARY_BEGIN = SimpleTemporaryObjectKind , TEMPORARY_END = ElidedTemporaryObjectKind , SimpleReturnedValueKind, CXX17ElidedCopyReturnedValueKind, RETURNED_VALUE_BEGIN = SimpleReturnedValueKind , RETURNED_VALUE_END = CXX17ElidedCopyReturnedValueKind , ArgumentKind, LambdaCaptureKind }
Public Member Functions inherited from clang::TemporaryObjectConstructionContext
const CXXBindTemporaryExpr * getCXXBindTemporaryExpr () const
CXXBindTemporaryExpr here is non-null as long as the temporary has a non-trivial destructor.
const MaterializeTemporaryExpr * getMaterializedTemporaryExpr () const
MaterializeTemporaryExpr is non-null as long as the temporary is actually used after construction, eg.
Public Member Functions inherited from clang::ConstructionContext
Kind getKind () const
virtual const ArrayInitLoopExpr * getArrayInitLoop () const
virtual ~ConstructionContext ()=default
Protected Member Functions inherited from clang::TemporaryObjectConstructionContext
TemporaryObjectConstructionContext (ConstructionContext::Kind K, const CXXBindTemporaryExpr *BTE, const MaterializeTemporaryExpr *MTE)
Protected Member Functions inherited from clang::ConstructionContext
ConstructionContext (Kind K)
Protected Attributes inherited from clang::ConstructionContext
Kind K

Represents a temporary object that is not constructed for the purpose of being immediately copied/moved by an elidable copy/move-constructor.

This includes temporary objects "in the middle of nowhere" like T(123) and lifetime-extended temporaries.

Definition at line 526 of file ConstructionContext.h.

classof()

ConstructionContext


The documentation for this class was generated from the following file: