clang 22.0.0git
|
Scope used to handle temporaries in toplevel variable declarations. More...
Public Member Functions | |
DeclScope (Compiler< Emitter > *Ctx, const ValueDecl *VD) | |
~DeclScope () | |
Public Member Functions inherited from clang::interp::LocalScope< Emitter > | |
LocalScope (Compiler< Emitter > *Ctx, ScopeKind Kind=ScopeKind::Block) | |
LocalScope (Compiler< Emitter > *Ctx, const ValueDecl *VD) | |
~LocalScope () override | |
Emit a Destroy op for this scope. | |
void | emitDestruction () override |
Overriden to support explicit destruction. | |
bool | destroyLocals (const Expr *E=nullptr) override |
Explicit destruction of local variables. | |
void | addLocal (const Scope::Local &Local) override |
bool | emitDestructors (const Expr *E=nullptr) override |
void | removeStoredOpaqueValues () |
void | removeIfStoredOpaqueValue (const Scope::Local &Local) |
Public Member Functions inherited from clang::interp::VariableScope< Emitter > | |
VariableScope (Compiler< Emitter > *Ctx, const ValueDecl *VD, ScopeKind Kind=ScopeKind::Block) | |
virtual | ~VariableScope () |
void | addExtended (const Scope::Local &Local, const ValueDecl *ExtendingDecl) |
void | addForScopeKind (const Scope::Local &Local, ScopeKind Kind) |
Like addExtended, but adds to the nearest scope of the given kind. | |
VariableScope * | getParent () const |
ScopeKind | getKind () const |
Additional Inherited Members | |
Public Attributes inherited from clang::interp::LocalScope< Emitter > | |
UnsignedOrNone | Idx = std::nullopt |
Index of the scope in the chain. | |
Protected Attributes inherited from clang::interp::VariableScope< Emitter > | |
Compiler< Emitter > * | Ctx |
Compiler instance. | |
VariableScope * | Parent |
Link to the parent scope. | |
const ValueDecl * | ValDecl = nullptr |
ScopeKind | Kind |
Scope used to handle temporaries in toplevel variable declarations.
Definition at line 39 of file Compiler.cpp.
|
inline |
Definition at line 41 of file Compiler.cpp.
References clang::interp::VariableScope< Emitter >::Ctx, clang::interp::InitLink::Decl(), and clang::interp::LocalScope< Emitter >::LocalScope().
|
inline |
Definition at line 48 of file Compiler.cpp.
References clang::interp::VariableScope< Emitter >::Ctx.