Lines Matching refs:Scope

104     const LocalScope* Scope;
107 /// Invalid iterator (with null Scope) has VarIter equal to 0.
115 : Scope(nullptr), VarIter(0) {}
120 : Scope(&S), VarIter(I) {
123 if (VarIter == 0 && Scope)
124 *this = Scope->Prev;
128 assert (Scope && "Dereferencing invalid iterator is not allowed");
130 return &Scope->Vars[VarIter - 1];
137 if (!Scope)
143 *this = Scope->Prev;
153 return Scope == rhs.Scope && VarIter == rhs.VarIter;
196 while (F.Scope != L.Scope) {
200 F = F.Scope->Prev;
443 LocalScope* createOrReuseLocalScope(LocalScope* Scope);
447 LocalScope* Scope = nullptr);
448 LocalScope* addLocalScopeForVarDecl(VarDecl *VD, LocalScope* Scope = nullptr);
1169 /// createOrReuseLocalScope - If Scope is NULL create new LocalScope. Either
1171 LocalScope* CFGBuilder::createOrReuseLocalScope(LocalScope* Scope) {
1172 if (!Scope) {
1174 Scope = alloc.Allocate<LocalScope>();
1176 new (Scope) LocalScope(ctx, ScopePos);
1178 return Scope;
1187 LocalScope *Scope = nullptr;
1194 Scope = addLocalScopeForDeclStmt(DS, Scope);
1206 /// reuse Scope if not NULL.
1208 LocalScope* Scope) {
1210 return Scope;
1214 Scope = addLocalScopeForVarDecl(VD, Scope);
1215 return Scope;
1220 /// const reference. Will reuse Scope if not NULL.
1222 LocalScope* Scope) {
1224 return Scope;
1232 default: return Scope;
1247 return Scope;
1251 return Scope;
1260 return Scope;
1268 Scope = createOrReuseLocalScope(Scope);
1269 Scope->addVar(VD);
1270 ScopePos = Scope->begin();
1272 return Scope;
1276 /// add destructors that will cleanup the scope. Will reuse Scope if not NULL.