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

Side by Side Diff: pkg/analysis_server/lib/src/provisional/completion/dart/completion_plugin.dart

Issue 1497523004: move dart completion contributor instantiation (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: merge and address comments Created 5 years 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
« no previous file with comments | « no previous file | pkg/analysis_server/lib/src/services/completion/dart/completion_manager.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 analysis_server.src.provisional.completion.dart.plugin; 5 library analysis_server.src.provisional.completion.dart.plugin;
6 6
7 import 'package:analysis_server/src/provisional/completion/dart/completion.dart' ; 7 import 'package:analysis_server/src/provisional/completion/dart/completion.dart' ;
8 import 'package:analysis_server/src/provisional/completion/dart/completion_dart. dart'; 8 import 'package:analysis_server/src/provisional/completion/dart/completion_dart. dart';
9 import 'package:analysis_server/src/services/completion/dart/keyword_contributor .dart'; 9 import 'package:analysis_server/src/services/completion/dart/keyword_contributor .dart';
10 import 'package:plugin/plugin.dart'; 10 import 'package:plugin/plugin.dart';
(...skipping 20 matching lines...) Expand all
31 /** 31 /**
32 * The extension point that allows plugins to register Dart specific 32 * The extension point that allows plugins to register Dart specific
33 * completion contributor factories. 33 * completion contributor factories.
34 */ 34 */
35 ExtensionPoint _contributorExtensionPoint; 35 ExtensionPoint _contributorExtensionPoint;
36 36
37 @override 37 @override
38 String get uniqueIdentifier => UNIQUE_IDENTIFIER; 38 String get uniqueIdentifier => UNIQUE_IDENTIFIER;
39 39
40 /** 40 /**
41 * Return a list containing all of the Dart specific completion contributor 41 * Return a list containing all of the Dart specific completion contributors.
42 * factories that were contributed.
43 */ 42 */
44 List<DartCompletionContributorFactory> get contributorFactories => 43 Iterable<DartCompletionContributorFactory> get contributors =>
45 _contributorExtensionPoint.extensions; 44 _contributorExtensionPoint.extensions
45 .map((DartCompletionContributorFactory factory) => factory());
46 46
47 @override 47 @override
48 void registerExtensionPoints(RegisterExtensionPoint registerExtensionPoint) { 48 void registerExtensionPoints(RegisterExtensionPoint registerExtensionPoint) {
49 _contributorExtensionPoint = registerExtensionPoint( 49 _contributorExtensionPoint = registerExtensionPoint(
50 CONTRIBUTOR_EXTENSION_POINT, 50 CONTRIBUTOR_EXTENSION_POINT,
51 _validateDartCompletionContributorExtension); 51 _validateDartCompletionContributorExtension);
52 } 52 }
53 53
54 @override 54 @override
55 void registerExtensions(RegisterExtension registerExtension) { 55 void registerExtensions(RegisterExtension registerExtension) {
56 registerExtension(DART_COMPLETION_CONTRIBUTOR_EXTENSION_POINT_ID, 56 registerExtension(DART_COMPLETION_CONTRIBUTOR_EXTENSION_POINT_ID,
57 () => new KeywordContributor()); 57 () => new KeywordContributor());
58 } 58 }
59 59
60 /** 60 /**
61 * Validate the given extension by throwing an [ExtensionError] if it is not a 61 * Validate the given extension by throwing an [ExtensionError] if it is not a
62 * valid Dart specific completion contributor. 62 * valid Dart specific completion contributor.
63 */ 63 */
64 void _validateDartCompletionContributorExtension(Object extension) { 64 void _validateDartCompletionContributorExtension(Object extension) {
65 if (extension is! DartCompletionContributorFactory) { 65 if (extension is! DartCompletionContributorFactory) {
66 String id = _contributorExtensionPoint.uniqueIdentifier; 66 String id = _contributorExtensionPoint.uniqueIdentifier;
67 throw new ExtensionError( 67 throw new ExtensionError(
68 'Extensions to $id must be a DartCompletionContributorFactory'); 68 'Extensions to $id must be a DartCompletionContributorFactory');
69 } 69 }
70 } 70 }
71 } 71 }
OLDNEW
« no previous file with comments | « no previous file | pkg/analysis_server/lib/src/services/completion/dart/completion_manager.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698