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

Unified Diff: packages/analyzer/lib/src/plugin/engine_plugin.dart

Issue 2990843002: Removed fixed dependencies (Closed)
Patch Set: Created 3 years, 5 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: packages/analyzer/lib/src/plugin/engine_plugin.dart
diff --git a/packages/analyzer/lib/src/plugin/engine_plugin.dart b/packages/analyzer/lib/src/plugin/engine_plugin.dart
index a53deb8999812d428416aff56baf5359a659b5be..816617854cae40171bfccdc0399a8bd36a7d624b 100644
--- a/packages/analyzer/lib/src/plugin/engine_plugin.dart
+++ b/packages/analyzer/lib/src/plugin/engine_plugin.dart
@@ -4,15 +4,17 @@
library analyzer.src.plugin.engine_plugin;
+import 'package:analyzer/error/error.dart' show AnalysisError;
import 'package:analyzer/plugin/task.dart';
import 'package:analyzer/src/generated/engine.dart'
show InternalAnalysisContext;
-import 'package:analyzer/src/generated/error.dart' show AnalysisError;
import 'package:analyzer/src/task/dart.dart';
import 'package:analyzer/src/task/dart_work_manager.dart';
import 'package:analyzer/src/task/general.dart';
import 'package:analyzer/src/task/html.dart';
import 'package:analyzer/src/task/html_work_manager.dart';
+import 'package:analyzer/src/task/options_work_manager.dart';
+import 'package:analyzer/src/task/yaml.dart';
import 'package:analyzer/task/model.dart';
import 'package:plugin/plugin.dart';
@@ -64,31 +66,33 @@ class EnginePlugin implements Plugin {
* The extension point that allows plugins to register new analysis error
* results for a Dart source.
*/
- ExtensionPoint dartErrorsForSourceExtensionPoint;
+ ExtensionPoint<ListResultDescriptor<AnalysisError>>
+ dartErrorsForSourceExtensionPoint;
/**
* The extension point that allows plugins to register new analysis error
* results for a Dart library specific unit.
*/
- ExtensionPoint dartErrorsForUnitExtensionPoint;
+ ExtensionPoint<ListResultDescriptor<AnalysisError>>
+ dartErrorsForUnitExtensionPoint;
/**
* The extension point that allows plugins to register new analysis error
* results for an HTML source.
*/
- ExtensionPoint htmlErrorsExtensionPoint;
+ ExtensionPoint<ListResultDescriptor<AnalysisError>> htmlErrorsExtensionPoint;
/**
* The extension point that allows plugins to register new analysis tasks with
* the analysis engine.
*/
- ExtensionPoint taskExtensionPoint;
+ ExtensionPoint<TaskDescriptor> taskExtensionPoint;
/**
* The extension point that allows plugins to register new work manager
* factories with the analysis engine.
*/
- ExtensionPoint workManagerFactoryExtensionPoint;
+ ExtensionPoint<WorkManagerFactory> workManagerFactoryExtensionPoint;
/**
* Initialize a newly created plugin.
@@ -135,20 +139,24 @@ class EnginePlugin implements Plugin {
@override
void registerExtensionPoints(RegisterExtensionPoint registerExtensionPoint) {
- dartErrorsForSourceExtensionPoint = registerExtensionPoint(
- DART_ERRORS_FOR_SOURCE_EXTENSION_POINT,
- _validateAnalysisErrorListResultDescriptor);
- dartErrorsForUnitExtensionPoint = registerExtensionPoint(
- DART_ERRORS_FOR_UNIT_EXTENSION_POINT,
- _validateAnalysisErrorListResultDescriptor);
- htmlErrorsExtensionPoint = registerExtensionPoint(
- HTML_ERRORS_EXTENSION_POINT,
- _validateAnalysisErrorListResultDescriptor);
+ dartErrorsForSourceExtensionPoint =
+ new ExtensionPoint<ListResultDescriptor<AnalysisError>>(
+ this, DART_ERRORS_FOR_SOURCE_EXTENSION_POINT, null);
+ registerExtensionPoint(dartErrorsForSourceExtensionPoint);
+ dartErrorsForUnitExtensionPoint =
+ new ExtensionPoint<ListResultDescriptor<AnalysisError>>(
+ this, DART_ERRORS_FOR_UNIT_EXTENSION_POINT, null);
+ registerExtensionPoint(dartErrorsForUnitExtensionPoint);
+ htmlErrorsExtensionPoint =
+ new ExtensionPoint<ListResultDescriptor<AnalysisError>>(
+ this, HTML_ERRORS_EXTENSION_POINT, null);
+ registerExtensionPoint(htmlErrorsExtensionPoint);
taskExtensionPoint =
- registerExtensionPoint(TASK_EXTENSION_POINT, _validateTaskExtension);
- workManagerFactoryExtensionPoint = registerExtensionPoint(
- WORK_MANAGER_FACTORY_EXTENSION_POINT,
- _validateWorkManagerFactoryExtension);
+ new ExtensionPoint<TaskDescriptor>(this, TASK_EXTENSION_POINT, null);
+ registerExtensionPoint(taskExtensionPoint);
+ workManagerFactoryExtensionPoint = new ExtensionPoint<WorkManagerFactory>(
+ this, WORK_MANAGER_FACTORY_EXTENSION_POINT, null);
+ registerExtensionPoint(workManagerFactoryExtensionPoint);
}
@override
@@ -190,13 +198,13 @@ class EnginePlugin implements Plugin {
registerExtension(taskId, BuildLibraryElementTask.DESCRIPTOR);
registerExtension(taskId, BuildPublicNamespaceTask.DESCRIPTOR);
registerExtension(taskId, BuildSourceExportClosureTask.DESCRIPTOR);
- registerExtension(taskId, BuildSourceImportExportClosureTask.DESCRIPTOR);
registerExtension(taskId, BuildTypeProviderTask.DESCRIPTOR);
registerExtension(taskId, ComputeConstantDependenciesTask.DESCRIPTOR);
registerExtension(taskId, ComputeConstantValueTask.DESCRIPTOR);
registerExtension(
taskId, ComputeInferableStaticVariableDependenciesTask.DESCRIPTOR);
registerExtension(taskId, ComputeLibraryCycleTask.DESCRIPTOR);
+ registerExtension(taskId, ComputeRequiredConstantsTask.DESCRIPTOR);
registerExtension(taskId, ContainingLibrariesTask.DESCRIPTOR);
registerExtension(taskId, DartErrorsTask.DESCRIPTOR);
registerExtension(taskId, EvaluateUnitConstantsTask.DESCRIPTOR);
@@ -211,9 +219,20 @@ class EnginePlugin implements Plugin {
registerExtension(taskId, LibraryUnitErrorsTask.DESCRIPTOR);
registerExtension(taskId, ParseDartTask.DESCRIPTOR);
registerExtension(taskId, PartiallyResolveUnitReferencesTask.DESCRIPTOR);
+ registerExtension(taskId, ReadyLibraryElement2Task.DESCRIPTOR);
+ registerExtension(taskId, ReadyLibraryElement5Task.DESCRIPTOR);
+ registerExtension(taskId, ReadyLibraryElement7Task.DESCRIPTOR);
+ registerExtension(taskId, ReadyResolvedUnitTask.DESCRIPTOR);
+ registerExtension(taskId, ResolveConstantExpressionTask.DESCRIPTOR);
+ registerExtension(taskId, ResolveDirectiveElementsTask.DESCRIPTOR);
+ registerExtension(taskId, ResolvedUnit7InLibraryClosureTask.DESCRIPTOR);
+ registerExtension(taskId, ResolvedUnit7InLibraryTask.DESCRIPTOR);
registerExtension(taskId, ResolveInstanceFieldsInUnitTask.DESCRIPTOR);
registerExtension(taskId, ResolveLibraryReferencesTask.DESCRIPTOR);
+ registerExtension(taskId, ResolveLibraryTask.DESCRIPTOR);
registerExtension(taskId, ResolveLibraryTypeNamesTask.DESCRIPTOR);
+ registerExtension(taskId, ResolveTopLevelLibraryTypeBoundsTask.DESCRIPTOR);
+ registerExtension(taskId, ResolveTopLevelUnitTypeBoundsTask.DESCRIPTOR);
registerExtension(taskId, ResolveUnitTask.DESCRIPTOR);
registerExtension(taskId, ResolveUnitTypeNamesTask.DESCRIPTOR);
registerExtension(taskId, ResolveVariableReferencesTask.DESCRIPTOR);
@@ -226,6 +245,10 @@ class EnginePlugin implements Plugin {
registerExtension(taskId, DartScriptsTask.DESCRIPTOR);
registerExtension(taskId, HtmlErrorsTask.DESCRIPTOR);
registerExtension(taskId, ParseHtmlTask.DESCRIPTOR);
+ //
+ // Register YAML tasks.
+ //
+ registerExtension(taskId, ParseYamlTask.DESCRIPTOR);
}
void _registerWorkManagerFactoryExtensions(
@@ -235,41 +258,8 @@ class EnginePlugin implements Plugin {
(InternalAnalysisContext context) => new DartWorkManager(context));
registerExtension(taskId,
(InternalAnalysisContext context) => new HtmlWorkManager(context));
- }
-
- /**
- * Validate the given extension by throwing an [ExtensionError] if it is not
- * a [ListResultDescriptor] of [AnalysisError]s.
- */
- void _validateAnalysisErrorListResultDescriptor(Object extension) {
- if (extension is! ListResultDescriptor<AnalysisError>) {
- String id = taskExtensionPoint.uniqueIdentifier;
- throw new ExtensionError(
- 'Extensions to $id must be a ListResultDescriptor<AnalysisError>');
- }
- }
-
- /**
- * Validate the given extension by throwing an [ExtensionError] if it is not
- * a [TaskDescriptor].
- */
- void _validateTaskExtension(Object extension) {
- if (extension is! TaskDescriptor) {
- String id = taskExtensionPoint.uniqueIdentifier;
- throw new ExtensionError('Extensions to $id must be a TaskDescriptor');
- }
- }
-
- /**
- * Validate the given extension by throwing an [ExtensionError] if it is not
- * a [WorkManagerFactory].
- */
- void _validateWorkManagerFactoryExtension(Object extension) {
- if (extension is! WorkManagerFactory) {
- String id = taskExtensionPoint.uniqueIdentifier;
- throw new ExtensionError(
- 'Extensions to $id must be a WorkManagerFactory');
- }
+ registerExtension(taskId,
+ (InternalAnalysisContext context) => new OptionsWorkManager(context));
}
}
« no previous file with comments | « packages/analyzer/lib/src/plugin/command_line_plugin.dart ('k') | packages/analyzer/lib/src/plugin/options_plugin.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698