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

Side by Side Diff: pkg/analysis_server/lib/src/services/completion/dart/completion_manager.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 | « pkg/analysis_server/lib/src/provisional/completion/dart/completion_plugin.dart ('k') | no next file » | 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 services.completion.dart.manager; 5 library services.completion.dart.manager;
6 6
7 import 'dart:async'; 7 import 'dart:async';
8 8
9 import 'package:analysis_server/plugin/protocol/protocol.dart'; 9 import 'package:analysis_server/plugin/protocol/protocol.dart';
10 import 'package:analysis_server/src/provisional/completion/completion_core.dart' 10 import 'package:analysis_server/src/provisional/completion/completion_core.dart'
(...skipping 26 matching lines...) Expand all
37 } 37 }
38 return new Future.value(); 38 return new Future.value();
39 } 39 }
40 40
41 /** 41 /**
42 * Return a [Future] that completes with a list of suggestions 42 * Return a [Future] that completes with a list of suggestions
43 * for the given completion [request]. 43 * for the given completion [request].
44 */ 44 */
45 Future<List<CompletionSuggestion>> _computeDartSuggestions( 45 Future<List<CompletionSuggestion>> _computeDartSuggestions(
46 DartCompletionRequest request) async { 46 DartCompletionRequest request) async {
47 // Build the Dart specific completion contributors
48 List<DartCompletionContributor> contributors =
49 <DartCompletionContributor>[];
50 for (DartCompletionContributorFactory contributorFactory
51 in dartCompletionPlugin.contributorFactories) {
52 contributors.add(contributorFactory());
53 }
54
55 // Request Dart specific completions from each contributor 47 // Request Dart specific completions from each contributor
56 List<CompletionSuggestion> suggestions = <CompletionSuggestion>[]; 48 List<CompletionSuggestion> suggestions = <CompletionSuggestion>[];
57 for (DartCompletionContributor contributor in contributors) { 49 for (DartCompletionContributor c in dartCompletionPlugin.contributors) {
58 suggestions.addAll(await contributor.computeSuggestions(request)); 50 suggestions.addAll(await c.computeSuggestions(request));
59 } 51 }
60 return suggestions; 52 return suggestions;
61 } 53 }
62 } 54 }
63 55
64 /** 56 /**
65 * The information about a requested list of completions within a Dart file. 57 * The information about a requested list of completions within a Dart file.
66 */ 58 */
67 class DartCompletionRequestImpl extends CompletionRequestImpl 59 class DartCompletionRequestImpl extends CompletionRequestImpl
68 implements DartCompletionRequest { 60 implements DartCompletionRequest {
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
140 132
141 @override 133 @override
142 CompletionTarget get target { 134 CompletionTarget get target {
143 if (_target == null) { 135 if (_target == null) {
144 CompilationUnit unit = context.computeResult(source, PARSED_UNIT); 136 CompilationUnit unit = context.computeResult(source, PARSED_UNIT);
145 _target = new CompletionTarget.forOffset(unit, offset); 137 _target = new CompletionTarget.forOffset(unit, offset);
146 } 138 }
147 return _target; 139 return _target;
148 } 140 }
149 } 141 }
OLDNEW
« no previous file with comments | « pkg/analysis_server/lib/src/provisional/completion/dart/completion_plugin.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698