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

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

Issue 1498733005: convert uri contributor to use new task model (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: 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 side-by-side diff with in-line comments
Download patch
Index: pkg/analysis_server/lib/src/services/completion/dart/uri_contributor.dart
diff --git a/pkg/analysis_server/lib/src/services/completion/uri_contributor.dart b/pkg/analysis_server/lib/src/services/completion/dart/uri_contributor.dart
similarity index 86%
rename from pkg/analysis_server/lib/src/services/completion/uri_contributor.dart
rename to pkg/analysis_server/lib/src/services/completion/dart/uri_contributor.dart
index c6b20d3cf73fb69ed5ab02edd9d2602babdfa81a..ebf87fed932bd46cb443a68392ece7c171fcb05e 100644
--- a/pkg/analysis_server/lib/src/services/completion/uri_contributor.dart
+++ b/pkg/analysis_server/lib/src/services/completion/dart/uri_contributor.dart
@@ -7,7 +7,7 @@ library services.completion.contributor.dart.importuri;
import 'dart:async';
import 'dart:core' hide Resource;
-import 'package:analysis_server/src/services/completion/dart_completion_manager.dart';
+import 'package:analysis_server/src/provisional/completion/dart/completion_dart.dart';
import 'package:analyzer/file_system/file_system.dart';
import 'package:analyzer/src/generated/ast.dart';
import 'package:analyzer/src/generated/sdk.dart';
@@ -15,7 +15,7 @@ import 'package:analyzer/src/generated/source.dart';
import 'package:path/path.dart' show posix;
import 'package:path/src/context.dart';
-import '../../protocol_server.dart'
+import '../../../protocol_server.dart'
show CompletionSuggestion, CompletionSuggestionKind;
/**
@@ -26,27 +26,20 @@ class UriContributor extends DartCompletionContributor {
_UriSuggestionBuilder builder;
@override
- bool computeFast(DartCompletionRequest request) {
+ Future<List<CompletionSuggestion>> computeSuggestions(
+ DartCompletionRequest request) async {
builder = new _UriSuggestionBuilder(request);
- return builder.computeFast(request.target.containingNode);
- }
-
- @override
- Future<bool> computeFull(DartCompletionRequest request) {
- return new Future.value(false);
+ request.target.containingNode.accept(builder);
+ return builder.suggestions;
}
}
class _UriSuggestionBuilder extends SimpleAstVisitor {
final DartCompletionRequest request;
+ final List<CompletionSuggestion> suggestions = <CompletionSuggestion>[];
_UriSuggestionBuilder(this.request);
- bool computeFast(AstNode node) {
- node.accept(this);
- return true;
- }
-
@override
visitExportDirective(ExportDirective node) {
visitNamespaceDirective(node);
@@ -179,24 +172,15 @@ class _UriSuggestionBuilder extends SimpleAstVisitor {
void _addSuggestion(String completion,
{int relevance: DART_RELEVANCE_DEFAULT}) {
- request.addSuggestion(new CompletionSuggestion(
- CompletionSuggestionKind.IMPORT,
- relevance,
- completion,
- completion.length,
- 0,
- false,
- false));
+ suggestions.add(new CompletionSuggestion(CompletionSuggestionKind.IMPORT,
+ relevance, completion, completion.length, 0, false, false));
}
String _extractPartialUri(SimpleStringLiteral node) {
if (request.offset < node.contentsOffset) {
return null;
}
- String partial = node.literal.lexeme.substring(
+ return node.literal.lexeme.substring(
node.contentsOffset - node.offset, request.offset - node.offset);
- request.replacementOffset = node.contentsOffset;
- request.replacementLength = node.contentsEnd - node.contentsOffset;
- return partial;
}
}

Powered by Google App Engine
This is Rietveld 408576698