| 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 d9088a9d9d3c2aa98ca52cdd8facd8c42f0c6ebe..6f1336fd2b5c93a5422935875c8dc0bb2f20fd1e 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
|
| @@ -39,7 +39,8 @@ class SearchEngineImpl2 implements SearchEngine {
|
| @override
|
| Future<List<SearchMatch>> searchMemberDeclarations(String name) async {
|
| List<SearchMatch> allDeclarations = [];
|
| - for (AnalysisDriver driver in _drivers) {
|
| + List<AnalysisDriver> drivers = _drivers.toList();
|
| + for (AnalysisDriver driver in drivers) {
|
| List<Element> elements = await driver.search.classMembers(name);
|
| allDeclarations.addAll(elements.map(_SearchMatch.forElement));
|
| }
|
| @@ -49,7 +50,8 @@ class SearchEngineImpl2 implements SearchEngine {
|
| @override
|
| Future<List<SearchMatch>> searchMemberReferences(String name) async {
|
| List<SearchResult> allResults = [];
|
| - for (AnalysisDriver driver in _drivers) {
|
| + List<AnalysisDriver> drivers = _drivers.toList();
|
| + for (AnalysisDriver driver in drivers) {
|
| List<SearchResult> results =
|
| await driver.search.unresolvedMemberReferences(name);
|
| allResults.addAll(results);
|
| @@ -60,7 +62,8 @@ class SearchEngineImpl2 implements SearchEngine {
|
| @override
|
| Future<List<SearchMatch>> searchReferences(Element element) async {
|
| List<SearchResult> allResults = [];
|
| - for (AnalysisDriver driver in _drivers) {
|
| + List<AnalysisDriver> drivers = _drivers.toList();
|
| + for (AnalysisDriver driver in drivers) {
|
| List<SearchResult> results = await driver.search.references(element);
|
| allResults.addAll(results);
|
| }
|
| @@ -77,7 +80,8 @@ class SearchEngineImpl2 implements SearchEngine {
|
| Future<List<SearchMatch>> searchTopLevelDeclarations(String pattern) async {
|
| List<SearchMatch> allDeclarations = [];
|
| RegExp regExp = new RegExp(pattern);
|
| - for (AnalysisDriver driver in _drivers) {
|
| + List<AnalysisDriver> drivers = _drivers.toList();
|
| + for (AnalysisDriver driver in drivers) {
|
| List<Element> elements = await driver.search.topLevelElements(regExp);
|
| allDeclarations.addAll(elements.map(_SearchMatch.forElement));
|
| }
|
| @@ -86,7 +90,8 @@ class SearchEngineImpl2 implements SearchEngine {
|
|
|
| Future<List<SearchResult>> _searchDirectSubtypes(ClassElement type) async {
|
| List<SearchResult> allResults = [];
|
| - for (AnalysisDriver driver in _drivers) {
|
| + List<AnalysisDriver> drivers = _drivers.toList();
|
| + for (AnalysisDriver driver in drivers) {
|
| List<SearchResult> results = await driver.search.subTypes(type);
|
| allResults.addAll(results);
|
| }
|
|
|