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

Unified Diff: pkg/analysis_server/lib/src/services/search/search_engine_internal2.dart

Issue 2572603003: Implement SearchEngine.searchTopLevelDeclarations() for the new driver. (Closed)
Patch Set: Created 4 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
« no previous file with comments | « no previous file | pkg/analysis_server/test/services/search/search_engine2_test.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/search/search_engine_internal2.dart
diff --git a/pkg/analysis_server/lib/src/services/search/search_engine_internal2.dart b/pkg/analysis_server/lib/src/services/search/search_engine_internal2.dart
index 71b1f297063883b485648ae119faada1bb663c45..5d740f8eaf158d710996069f940d4938e7a2b9fc 100644
--- a/pkg/analysis_server/lib/src/services/search/search_engine_internal2.dart
+++ b/pkg/analysis_server/lib/src/services/search/search_engine_internal2.dart
@@ -66,8 +66,24 @@ class SearchEngineImpl2 implements SearchEngine {
@override
Future<List<SearchMatch>> searchTopLevelDeclarations(String pattern) async {
- // TODO(scheglov) implement
- return [];
+ List<SearchMatch> allDeclarations = [];
+ RegExp regExp = new RegExp(pattern);
+ for (AnalysisDriver driver in _drivers) {
+ List<Element> elements = await driver.search.topLevelElements(regExp);
+ for (Element element in elements) {
+ allDeclarations.add(new _SearchMatch(
+ element.source.fullName,
+ element.librarySource,
+ element.source,
+ element.library,
+ element,
+ true,
+ true,
+ MatchKind.DECLARATION,
+ new SourceRange(element.nameOffset, element.nameLength)));
+ }
+ }
+ return allDeclarations;
}
Future<List<SearchResult>> _searchDirectSubtypes(ClassElement type) async {
« no previous file with comments | « no previous file | pkg/analysis_server/test/services/search/search_engine2_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698