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 6573b0aab6d29093e0e2a4ba2ca596f02a11d009..a53deb8999812d428416aff56baf5359a659b5be 100644 |
--- a/packages/analyzer/lib/src/plugin/engine_plugin.dart |
+++ b/packages/analyzer/lib/src/plugin/engine_plugin.dart |
@@ -99,21 +99,24 @@ class EnginePlugin implements Plugin { |
* Return a list containing all of the contributed analysis error result |
* descriptors for Dart sources. |
*/ |
- List<TaskDescriptor> get dartErrorsForSource => |
+ @ExtensionPointId('DART_ERRORS_FOR_SOURCE_EXTENSION_POINT_ID') |
+ List<ResultDescriptor> get dartErrorsForSource => |
dartErrorsForSourceExtensionPoint.extensions; |
/** |
* Return a list containing all of the contributed analysis error result |
* descriptors for Dart library specific units. |
*/ |
- List<TaskDescriptor> get dartErrorsForUnit => |
+ @ExtensionPointId('DART_ERRORS_FOR_UNIT_EXTENSION_POINT_ID') |
+ List<ResultDescriptor> get dartErrorsForUnit => |
dartErrorsForUnitExtensionPoint.extensions; |
/** |
* Return a list containing all of the contributed analysis error result |
* descriptors for HTML sources. |
*/ |
- List<TaskDescriptor> get htmlErrors => htmlErrorsExtensionPoint.extensions; |
+ @ExtensionPointId('HTML_ERRORS_EXTENSION_POINT_ID') |
+ List<ResultDescriptor> get htmlErrors => htmlErrorsExtensionPoint.extensions; |
/** |
* Return a list containing all of the task descriptors that were contributed. |
@@ -158,19 +161,17 @@ class EnginePlugin implements Plugin { |
} |
void _registerDartErrorsForSource(RegisterExtension registerExtension) { |
- String id = DART_ERRORS_FOR_SOURCE_EXTENSION_POINT_ID; |
- registerExtension(id, PARSE_ERRORS); |
- registerExtension(id, SCAN_ERRORS); |
+ registerExtension(DART_ERRORS_FOR_SOURCE_EXTENSION_POINT_ID, PARSE_ERRORS); |
+ registerExtension(DART_ERRORS_FOR_SOURCE_EXTENSION_POINT_ID, SCAN_ERRORS); |
} |
void _registerDartErrorsForUnit(RegisterExtension registerExtension) { |
- String id = DART_ERRORS_FOR_UNIT_EXTENSION_POINT_ID; |
- registerExtension(id, LIBRARY_UNIT_ERRORS); |
+ registerExtension( |
+ DART_ERRORS_FOR_UNIT_EXTENSION_POINT_ID, LIBRARY_UNIT_ERRORS); |
} |
void _registerHtmlErrors(RegisterExtension registerExtension) { |
- String id = HTML_ERRORS_EXTENSION_POINT_ID; |
- registerExtension(id, HTML_DOCUMENT_ERRORS); |
+ registerExtension(HTML_ERRORS_EXTENSION_POINT_ID, HTML_DOCUMENT_ERRORS); |
} |
void _registerTaskExtensions(RegisterExtension registerExtension) { |
@@ -217,6 +218,7 @@ class EnginePlugin implements Plugin { |
registerExtension(taskId, ResolveUnitTypeNamesTask.DESCRIPTOR); |
registerExtension(taskId, ResolveVariableReferencesTask.DESCRIPTOR); |
registerExtension(taskId, ScanDartTask.DESCRIPTOR); |
+ registerExtension(taskId, StrongModeVerifyUnitTask.DESCRIPTOR); |
registerExtension(taskId, VerifyUnitTask.DESCRIPTOR); |
// |
// Register HTML tasks. |
@@ -270,3 +272,17 @@ class EnginePlugin implements Plugin { |
} |
} |
} |
+ |
+/** |
+ * Annotation describing the relationship between a getter in [EnginePlugin] |
+ * and the associated identifier (in '../../plugin/task.dart') which can be |
+ * passed to the extension manager to populate it. |
+ * |
+ * This annotation is not used at runtime; it is used to aid in static analysis |
+ * of the task model during development. |
+ */ |
+class ExtensionPointId { |
+ final String extensionPointId; |
+ |
+ const ExtensionPointId(this.extensionPointId); |
+} |