Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(463)

Side by Side Diff: pkg/compiler/lib/src/common/resolution.dart

Issue 1910473003: Remove invalidated elements from enqueuer and resolution. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Also remove element from _resolutionImpactCache. Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | pkg/compiler/lib/src/compiler.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library dart2js.common.resolution; 5 library dart2js.common.resolution;
6 6
7 import '../common.dart'; 7 import '../common.dart';
8 import '../compiler.dart' show Compiler; 8 import '../compiler.dart' show Compiler;
9 import '../constants/expressions.dart' show ConstantExpression; 9 import '../constants/expressions.dart' show ConstantExpression;
10 import '../core_types.dart' show CoreTypes; 10 import '../core_types.dart' show CoreTypes;
(...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after
236 WorldImpact computeWorldImpact(Element element); 236 WorldImpact computeWorldImpact(Element element);
237 237
238 /// Removes the [WorldImpact] for [element] from the resolution cache. Later 238 /// Removes the [WorldImpact] for [element] from the resolution cache. Later
239 /// calls to [getWorldImpact] or [computeWorldImpact] returns an empty impact. 239 /// calls to [getWorldImpact] or [computeWorldImpact] returns an empty impact.
240 void uncacheWorldImpact(Element element); 240 void uncacheWorldImpact(Element element);
241 241
242 /// Removes the [WorldImpact]s for all [Element]s in the resolution cache. , 242 /// Removes the [WorldImpact]s for all [Element]s in the resolution cache. ,
243 /// Later calls to [getWorldImpact] or [computeWorldImpact] returns an empty 243 /// Later calls to [getWorldImpact] or [computeWorldImpact] returns an empty
244 /// impact. 244 /// impact.
245 void emptyCache(); 245 void emptyCache();
246
247 void forgetElement(Element element);
246 } 248 }
247 249
248 /// A container of commonly used dependencies for tasks that involve parsing. 250 /// A container of commonly used dependencies for tasks that involve parsing.
249 abstract class ParsingContext { 251 abstract class ParsingContext {
250 factory ParsingContext( 252 factory ParsingContext(
251 DiagnosticReporter reporter, 253 DiagnosticReporter reporter,
252 ParserOptions parserOptions, 254 ParserOptions parserOptions,
253 ParserTask parser, 255 ParserTask parser,
254 PatchParserTask patchParser, 256 PatchParserTask patchParser,
255 Backend backend) = _ParsingContext; 257 Backend backend) = _ParsingContext;
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
290 if (cls.isPatch) { 292 if (cls.isPatch) {
291 patchParser.parsePatchClassNode(cls); 293 patchParser.parsePatchClassNode(cls);
292 } 294 }
293 }); 295 });
294 } 296 }
295 297
296 @override 298 @override
297 ScannerOptions getScannerOptionsFor(Element element) => new ScannerOptions( 299 ScannerOptions getScannerOptionsFor(Element element) => new ScannerOptions(
298 canUseNative: backend.canLibraryUseNative(element.library)); 300 canUseNative: backend.canLibraryUseNative(element.library));
299 } 301 }
OLDNEW
« no previous file with comments | « no previous file | pkg/compiler/lib/src/compiler.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698