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

Unified Diff: pkg/analyzer_experimental/lib/src/generated/engine.dart

Issue 16702002: New analyzer_experimental snapshot. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 6 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 side-by-side diff with in-line comments
Download patch
Index: pkg/analyzer_experimental/lib/src/generated/engine.dart
diff --git a/pkg/analyzer_experimental/lib/src/generated/engine.dart b/pkg/analyzer_experimental/lib/src/generated/engine.dart
index b82126a0bc56aedae9925d0f15e2b4253d3f81d7..a6d6066a8bd30d36255c162e7e72767f47923679 100644
--- a/pkg/analyzer_experimental/lib/src/generated/engine.dart
+++ b/pkg/analyzer_experimental/lib/src/generated/engine.dart
@@ -3158,16 +3158,22 @@ class AnalysisContextImpl implements InternalAnalysisContext {
htmlCopy.setState(HtmlEntry.RESOLVED_UNIT, CacheState.INVALID);
_sourceMap[source] = htmlCopy;
} else if (sourceEntry is DartEntry) {
+ Set<Source> librariesToInvalidate = new Set<Source>();
List<Source> containingLibraries = getLibrariesContaining(source);
+ for (Source containingLibrary in containingLibraries) {
+ javaSetAdd(librariesToInvalidate, containingLibrary);
+ for (Source dependentLibrary in getLibrariesDependingOn(containingLibrary)) {
+ javaSetAdd(librariesToInvalidate, dependentLibrary);
+ }
+ }
DartEntryImpl dartCopy = ((sourceEntry as DartEntry)).writableCopy;
dartCopy.setState(SourceEntry.LINE_INFO, CacheState.INVALID);
dartCopy.setState(DartEntry.PARSE_ERRORS, CacheState.INVALID);
dartCopy.setState(DartEntry.PARSED_UNIT, CacheState.INVALID);
dartCopy.setState(DartEntry.SOURCE_KIND, CacheState.INVALID);
_sourceMap[source] = dartCopy;
- invalidateLibraryResolution(source);
- for (Source librarySource in containingLibraries) {
- invalidateLibraryResolution(librarySource);
+ for (Source library in librariesToInvalidate) {
+ invalidateLibraryResolution(library);
}
}
}
« no previous file with comments | « pkg/analyzer_experimental/lib/src/generated/element.dart ('k') | pkg/analyzer_experimental/lib/src/generated/error.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698