Chromium Code Reviews| Index: pkg/analyzer/lib/src/task/html.dart |
| diff --git a/pkg/analyzer/lib/src/task/html.dart b/pkg/analyzer/lib/src/task/html.dart |
| index 742ed2d55973aa56dffe61948d53c60aa7339418..c35ab4139b96b6f783622485f9d07a2308c98878 100644 |
| --- a/pkg/analyzer/lib/src/task/html.dart |
| +++ b/pkg/analyzer/lib/src/task/html.dart |
| @@ -21,6 +21,7 @@ import 'package:source_span/source_span.dart'; |
| import 'package:analyzer/src/context/cache.dart'; |
| import 'package:analyzer/src/generated/java_engine.dart'; |
| import 'package:analyzer/src/generated/scanner.dart'; |
| +import 'package:analyzer/src/plugin/engine_plugin.dart'; |
| /** |
| * The Dart scripts that are embedded in an HTML file. |
| @@ -196,11 +197,6 @@ class HtmlErrorsTask extends SourceBasedAnalysisTask { |
| static const String DART_ERRORS_INPUT = 'DART_ERRORS'; |
| /** |
| - * The name of the [HTML_DOCUMENT_ERRORS] input. |
| - */ |
| - static const String DOCUMENT_ERRORS_INPUT = 'DOCUMENT_ERRORS'; |
| - |
| - /** |
| * The task descriptor describing this kind of task. |
| */ |
| static final TaskDescriptor DESCRIPTOR = new TaskDescriptor('HtmlErrorsTask', |
| @@ -214,24 +210,26 @@ class HtmlErrorsTask extends SourceBasedAnalysisTask { |
| @override |
| void internalPerform() { |
| + EnginePlugin enginePlugin = AnalysisEngine.instance.enginePlugin; |
| // |
| // Prepare inputs. |
| // |
| List<List<AnalysisError>> dartErrors = getRequiredInput(DART_ERRORS_INPUT); |
| - List<AnalysisError> documentErrors = |
| - getRequiredInput(DOCUMENT_ERRORS_INPUT); |
| + List<List<AnalysisError>> htmlErrors = <List<AnalysisError>>[]; |
| + for (ResultDescriptor result in enginePlugin.htmlErrors) { |
| + String inputName = result.name + '_input'; |
|
Brian Wilkerson
2015/09/14 18:55:35
'_input' should be a constant
|
| + htmlErrors.add(getRequiredInput(inputName)); |
| + } |
| // |
| // Compute the error list. |
| // |
| - List<AnalysisError> errors = <AnalysisError>[]; |
| - errors.addAll(documentErrors); |
| - for (List<AnalysisError> scriptErrors in dartErrors) { |
| - errors.addAll(scriptErrors); |
| - } |
| + List<List<AnalysisError>> errorLists = <List<AnalysisError>>[]; |
| + errorLists.addAll(dartErrors); |
| + errorLists.addAll(htmlErrors); |
| // |
| // Record outputs. |
| // |
| - outputs[HTML_ERRORS] = removeDuplicateErrors(errors); |
| + outputs[HTML_ERRORS] = AnalysisError.mergeLists(errorLists); |
| } |
| /** |
| @@ -240,10 +238,15 @@ class HtmlErrorsTask extends SourceBasedAnalysisTask { |
| * given [target]. |
| */ |
| static Map<String, TaskInput> buildInputs(Source target) { |
| - return <String, TaskInput>{ |
| - DOCUMENT_ERRORS_INPUT: HTML_DOCUMENT_ERRORS.of(target), |
| + EnginePlugin enginePlugin = AnalysisEngine.instance.enginePlugin; |
| + Map<String, TaskInput> inputs = <String, TaskInput>{ |
| DART_ERRORS_INPUT: DART_SCRIPTS.of(target).toListOf(DART_ERRORS) |
| }; |
| + for (ResultDescriptor result in enginePlugin.htmlErrors) { |
| + String inputName = result.name + '_input'; |
| + inputs[inputName] = result.of(target); |
| + } |
| + return inputs; |
| } |
| /** |