clang 20.0.0git
|
Scope used to handle temporaries in toplevel variable declarations. More...
Public Member Functions | |
DeclScope (Compiler< Emitter > *Ctx, const ValueDecl *VD) | |
void | addExtended (const Scope::Local &Local) override |
~DeclScope () | |
Public Member Functions inherited from clang::interp::LocalScope< Emitter > | |
LocalScope (Compiler< Emitter > *Ctx) | |
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) | |
virtual | ~VariableScope () |
void | add (const Scope::Local &Local, bool IsExtended) |
virtual void | addLocal (const Scope::Local &Local) |
virtual void | addExtended (const Scope::Local &Local) |
void | addExtended (const Scope::Local &Local, const ValueDecl *ExtendingDecl) |
virtual void | emitDestruction () |
virtual bool | emitDestructors (const Expr *E=nullptr) |
virtual bool | destroyLocals (const Expr *E=nullptr) |
VariableScope * | getParent () const |
Additional Inherited Members | |
Public Attributes inherited from clang::interp::LocalScope< Emitter > | |
std::optional< unsigned > | Idx |
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 |
Scope used to handle temporaries in toplevel variable declarations.
Definition at line 28 of file Compiler.cpp.
|
inline |
Definition at line 30 of file Compiler.cpp.
References clang::interp::VariableScope< Emitter >::Ctx, and clang::interp::InitLink::Decl().
|
inline |
Definition at line 41 of file Compiler.cpp.
References clang::interp::VariableScope< Emitter >::Ctx.
|
inlineoverridevirtual |
Reimplemented from clang::interp::VariableScope< Emitter >.
Definition at line 37 of file Compiler.cpp.
References clang::interp::LocalScope< Emitter >::addLocal().