reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
237 extern template class ByteCodeExprGen<EvalEmitter>;
29 template <class Emitter> class DeclScope final : public LocalScope<Emitter> { 31 DeclScope(ByteCodeExprGen<Emitter> *Ctx, const VarDecl *VD) 45 using InitFnRef = typename ByteCodeExprGen<Emitter>::InitFnRef; 49 OptionScope(ByteCodeExprGen<Emitter> *Ctx, bool NewDiscardResult) 57 OptionScope(ByteCodeExprGen<Emitter> *Ctx, InitFnRef NewInitFn) 65 OptionScope(ByteCodeExprGen<Emitter> *Ctx, ChainedInitFnRef NewInitFn) 79 ByteCodeExprGen<Emitter> *Ctx; 210 OptionScope<Emitter> Scope(this, /*discardResult=*/true); 216 OptionScope<Emitter> Scope(this, /*discardResult=*/false); 466 OptionScope<Emitter> Scope(this, InitFn); 520 ExprScope<Emitter> RootScope(this); 538 DeclScope<Emitter> LocalScope(this, VD); 552 DeclScope<Emitter> LocalScope(this, VD); 569 for (VariableScope<Emitter> *C = VarScope; C; C = C->getParent())tools/clang/lib/AST/Interp/ByteCodeExprGen.h
41 class ByteCodeExprGen : public ConstStmtVisitor<ByteCodeExprGen<Emitter>, bool>, 42 public Emitter { 51 using LabelTy = typename Emitter::LabelTy; 52 using AddrTy = typename Emitter::AddrTy; 224 VariableScope<Emitter> *VarScope = nullptr; 266 VariableScope(ByteCodeExprGen<Emitter> *Ctx) 272 ByteCodeExprGen<Emitter> *Ctx; 281 template <class Emitter> class LocalScope : public VariableScope<Emitter> { 283 LocalScope(ByteCodeExprGen<Emitter> *Ctx) : VariableScope<Emitter>(Ctx) {} 319 template <class Emitter> class ExprScope final : public LocalScope<Emitter> { 321 ExprScope(ByteCodeExprGen<Emitter> *Ctx) : LocalScope<Emitter>(Ctx) {}tools/clang/lib/AST/Interp/Context.cpp
56 ByteCodeExprGen<EvalEmitter> C(*this, *P, Parent, Stk, Result); 62 ByteCodeExprGen<EvalEmitter> C(*this, *P, Parent, Stk, Result);tools/clang/lib/AST/Interp/EvalEmitter.cpp
49 EvalEmitter::LabelTy EvalEmitter::getLabel() { return NextLabel++; }