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

Unified Diff: pkg/analysis_server/lib/src/services/completion/common_usage_computer.dart

Issue 1353913002: Add defaultCompletionSorter allowing sorting to be overridden - fixes #24339 (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 | « no previous file | pkg/analysis_server/lib/src/services/completion/contribution_sorter.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/analysis_server/lib/src/services/completion/common_usage_computer.dart
diff --git a/pkg/analysis_server/lib/src/services/completion/common_usage_computer.dart b/pkg/analysis_server/lib/src/services/completion/common_usage_computer.dart
index 11b4f1ba56c6e4cd5963c9cd5404b3d45254ca59..047a1fbe9bff8bab3453f1c367968ec63f7f900d 100644
--- a/pkg/analysis_server/lib/src/services/completion/common_usage_computer.dart
+++ b/pkg/analysis_server/lib/src/services/completion/common_usage_computer.dart
@@ -7,6 +7,7 @@ library services.completion.computer.dart.relevance;
import 'package:analysis_server/src/protocol_server.dart' as protocol;
import 'package:analysis_server/src/protocol_server.dart'
show CompletionSuggestion, CompletionSuggestionKind;
+import 'package:analysis_server/src/services/completion/contribution_sorter.dart';
import 'package:analysis_server/src/services/completion/dart_completion_manager.dart';
import 'package:analyzer/src/generated/ast.dart';
import 'package:analyzer/src/generated/element.dart';
@@ -15,9 +16,10 @@ part 'common_usage_generated.dart';
/**
* A computer for adjusting the relevance of completions computed by others
- * based upon common Dart usage patterns.
+ * based upon common Dart usage patterns. This is a long-lived object
+ * that should not maintain state between calls to it's [sort] method.
*/
-class CommonUsageComputer {
+class CommonUsageComputer implements ContributionSorter {
/**
* A map of <library>.<classname> to an ordered list of method names,
* field names, getter names, and named constructors.
@@ -28,22 +30,8 @@ class CommonUsageComputer {
CommonUsageComputer([this.selectorRelevance = defaultSelectorRelevance]);
- /**
- * Adjusts the relevance based on the given completion context.
- * The compilation unit and completion node
- * in the given completion context may not be resolved.
- * This method should execute quickly and not block waiting for any analysis.
- */
- void computeFast(DartCompletionRequest request) {
- _update(request);
- }
-
- /**
- * Adjusts the relevance based on the given completion context.
- * The compilation unit and completion node
- * in the given completion context are resolved.
- */
- void computeFull(DartCompletionRequest request) {
+ @override
+ void sort(DartCompletionRequest request) {
_update(request);
}
« no previous file with comments | « no previous file | pkg/analysis_server/lib/src/services/completion/contribution_sorter.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698