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

Unified Diff: pkg/analyzer/lib/src/task/html.dart

Issue 1341723003: Add an extension point for contributing to HTML_ERRORS. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 5 years, 3 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
« no previous file with comments | « pkg/analyzer/lib/src/plugin/engine_plugin.dart ('k') | pkg/analyzer/test/src/task/html_test.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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;
}
/**
« no previous file with comments | « pkg/analyzer/lib/src/plugin/engine_plugin.dart ('k') | pkg/analyzer/test/src/task/html_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698