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

Side by Side Diff: pkg/analyzer/lib/src/task/dart_work_manager.dart

Issue 1179253002: Mix VARIABLE_REFERENCE_ERRORS into the full errors list on ChangeNotice. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Return DART_ERRORS from getErrors() when valid. Created 5 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, 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 analyzer.src.task.dart_work_manager; 5 library analyzer.src.task.dart_work_manager;
6 6
7 import 'dart:collection'; 7 import 'dart:collection';
8 8
9 import 'package:analyzer/src/context/cache.dart'; 9 import 'package:analyzer/src/context/cache.dart';
10 import 'package:analyzer/src/generated/engine.dart' 10 import 'package:analyzer/src/generated/engine.dart'
(...skipping 28 matching lines...) Expand all
39 ]; 39 ];
40 40
41 /** 41 /**
42 * The list of errors that are reported for raw Dart [LibrarySpecificUnit]s. 42 * The list of errors that are reported for raw Dart [LibrarySpecificUnit]s.
43 */ 43 */
44 static final List<ResultDescriptor> _UNIT_ERRORS = <ResultDescriptor>[ 44 static final List<ResultDescriptor> _UNIT_ERRORS = <ResultDescriptor>[
45 BUILD_FUNCTION_TYPE_ALIASES_ERRORS, 45 BUILD_FUNCTION_TYPE_ALIASES_ERRORS,
46 HINTS, 46 HINTS,
47 RESOLVE_REFERENCES_ERRORS, 47 RESOLVE_REFERENCES_ERRORS,
48 RESOLVE_TYPE_NAMES_ERRORS, 48 RESOLVE_TYPE_NAMES_ERRORS,
49 VARIABLE_REFERENCE_ERRORS,
49 VERIFY_ERRORS 50 VERIFY_ERRORS
50 ]; 51 ];
51 52
52 final InternalAnalysisContext context; 53 final InternalAnalysisContext context;
53 54
54 /** 55 /**
55 * The [TargetedResult]s that should be computed with priority. 56 * The [TargetedResult]s that should be computed with priority.
56 */ 57 */
57 final LinkedHashSet<TargetedResult> priorityResultQueue = 58 final LinkedHashSet<TargetedResult> priorityResultQueue =
58 new LinkedHashSet<TargetedResult>(); 59 new LinkedHashSet<TargetedResult>();
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
172 } 173 }
173 } 174 }
174 175
175 /** 176 /**
176 * Return an [AnalysisErrorInfo] containing the list of all of the errors and 177 * Return an [AnalysisErrorInfo] containing the list of all of the errors and
177 * the line info associated with the given [source]. The list of errors will 178 * the line info associated with the given [source]. The list of errors will
178 * be empty if the source is not known to the context or if there are no 179 * be empty if the source is not known to the context or if there are no
179 * errors in the source. The errors contained in the list can be incomplete. 180 * errors in the source. The errors contained in the list can be incomplete.
180 */ 181 */
181 AnalysisErrorInfo getErrors(Source source) { 182 AnalysisErrorInfo getErrors(Source source) {
183 if (analysisCache.getState(source, DART_ERRORS) == CacheState.VALID) {
184 List<AnalysisError> errors = analysisCache.getValue(source, DART_ERRORS);
185 LineInfo lineInfo = analysisCache.getValue(source, LINE_INFO);
186 return new AnalysisErrorInfoImpl(errors, lineInfo);
187 }
182 List<AnalysisError> errors = <AnalysisError>[]; 188 List<AnalysisError> errors = <AnalysisError>[];
183 for (ResultDescriptor descriptor in _SOURCE_ERRORS) { 189 for (ResultDescriptor descriptor in _SOURCE_ERRORS) {
184 errors.addAll(analysisCache.getValue(source, descriptor)); 190 errors.addAll(analysisCache.getValue(source, descriptor));
185 } 191 }
186 for (Source library in context.getLibrariesContaining(source)) { 192 for (Source library in context.getLibrariesContaining(source)) {
187 LibrarySpecificUnit unit = new LibrarySpecificUnit(library, source); 193 LibrarySpecificUnit unit = new LibrarySpecificUnit(library, source);
188 for (ResultDescriptor descriptor in _UNIT_ERRORS) { 194 for (ResultDescriptor descriptor in _UNIT_ERRORS) {
189 errors.addAll(analysisCache.getValue(unit, descriptor)); 195 errors.addAll(analysisCache.getValue(unit, descriptor));
190 } 196 }
191 } 197 }
(...skipping 246 matching lines...) Expand 10 before | Expand all | Expand 10 after
438 } 444 }
439 } 445 }
440 446
441 bool _shouldErrorsBeComputed(Source source) => 447 bool _shouldErrorsBeComputed(Source source) =>
442 context.shouldErrorsBeAnalyzed(source, null); 448 context.shouldErrorsBeAnalyzed(source, null);
443 449
444 static bool _isDartSource(AnalysisTarget target) { 450 static bool _isDartSource(AnalysisTarget target) {
445 return target is Source && AnalysisEngine.isDartFileName(target.fullName); 451 return target is Source && AnalysisEngine.isDartFileName(target.fullName);
446 } 452 }
447 } 453 }
OLDNEW
« no previous file with comments | « pkg/analyzer/lib/src/generated/incremental_resolver.dart ('k') | pkg/analyzer/test/src/task/dart_work_manager_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698