clang: clang::ElidedTemporaryObjectConstructionContext Class Reference (original) (raw)
Represents a temporary object that is constructed for the sole purpose of being immediately copied by an elidable copy/move constructor. More...
#include "[clang/Analysis/ConstructionContext.h](ConstructionContext%5F8h%5Fsource.html)"
| Public Member Functions | |
|---|---|
| const CXXConstructExpr * | getConstructorAfterElision () const |
| const ConstructionContext * | getConstructionContextAfterElision () const |
| 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 |
| 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 |
Represents a temporary object that is constructed for the sole purpose of being immediately copied by an elidable copy/move constructor.
For example, T t = T(123); includes a temporary T(123) that is immediately copied to variable t. In such cases the elidable copy can (but not necessarily should) be omitted ("elided") according to the rules of the language; the constructor would then construct variable t directly. This construction context contains information of the elidable constructor and its respective construction context.
Definition at line 549 of file ConstructionContext.h.
◆ classof()
◆ getConstructionContextAfterElision()
| const ConstructionContext * clang::ElidedTemporaryObjectConstructionContext::getConstructionContextAfterElision ( ) const | inline |
|---|
◆ getConstructorAfterElision()
| const CXXConstructExpr * clang::ElidedTemporaryObjectConstructionContext::getConstructorAfterElision ( ) const | inline |
|---|
◆ ConstructionContext
The documentation for this class was generated from the following file:
- include/clang/Analysis/ConstructionContext.h