Skip to content

Commit cb96256

Browse files
scheglovCommit Queue
authored andcommitted
Elements. Migrate src/dart/analysis/search.dart
Replace index / search of `CompilationUnitElement` with special `referencesLibraryFragment(LibraryFragment)`, because they are not elements. Change-Id: I4de4ce42270bdad92996bedbd06f108a7c71dffe Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/412681 Reviewed-by: Paul Berry <[email protected]> Commit-Queue: Konstantin Shcheglov <[email protected]>
1 parent 3f5a1ba commit cb96256

File tree

14 files changed

+455
-428
lines changed

14 files changed

+455
-428
lines changed

pkg/analysis_server/lib/src/services/search/search_engine_internal.dart

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,8 @@ class SearchEngineImpl implements SearchEngine {
3535
_searchDirectSubtypes(type, searchEngineCache, performance),
3636
);
3737
for (var directResult in directResults) {
38-
var directSubtype = directResult.enclosingElement2 as InterfaceElement2;
38+
var directSubtype =
39+
directResult.enclosingFragment.element as InterfaceElement2;
3940
if (allSubtypes.add(directSubtype)) {
4041
await addSubtypes(directSubtype);
4142
}
@@ -124,7 +125,7 @@ class SearchEngineImpl implements SearchEngine {
124125
var drivers = _drivers.toList();
125126
var searchedFiles = _createSearchedFiles(drivers);
126127
for (var driver in drivers) {
127-
var elements = await driver.search.classMembers2(name, searchedFiles);
128+
var elements = await driver.search.classMembers(name, searchedFiles);
128129
allDeclarations.addAll(elements.map(SearchMatchImpl.forElement));
129130
}
130131
return allDeclarations;
@@ -161,7 +162,7 @@ class SearchEngineImpl implements SearchEngine {
161162
var drivers = _drivers.toList();
162163
var searchedFiles = _createSearchedFiles(drivers);
163164
for (var driver in drivers) {
164-
var results = await driver.search.references2(element, searchedFiles);
165+
var results = await driver.search.references(element, searchedFiles);
165166
allResults.addAll(results);
166167
}
167168
return allResults.map(SearchMatchImpl.forSearchResult).toList();
@@ -194,7 +195,7 @@ class SearchEngineImpl implements SearchEngine {
194195
var regExp = RegExp(pattern);
195196
var drivers = _drivers.toList();
196197
for (var driver in drivers) {
197-
var elements = await driver.search.topLevelElements2(regExp);
198+
var elements = await driver.search.topLevelElements(regExp);
198199
allElements.addAll(elements);
199200
}
200201
return allElements.map(SearchMatchImpl.forElement).toList();
@@ -336,7 +337,7 @@ class SearchMatchImpl implements SearchMatch {
336337
libraryFragment.element.firstFragment.source,
337338
libraryFragment.source,
338339
libraryFragment.element,
339-
result.enclosingElement2,
340+
result.enclosingFragment.element,
340341
result.isResolved,
341342
result.isQualified,
342343
toMatchKind(result.kind),

pkg/analyzer/lib/src/dart/analysis/index.dart

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -830,9 +830,17 @@ class _IndexContributor extends GeneralizingAstVisitor {
830830
}
831831

832832
@override
833-
void visitExportDirective(ExportDirective node) {
834-
var element = node.libraryExport;
835-
recordUriReference(element?.exportedLibrary2, node.uri);
833+
void visitExportDirective(covariant ExportDirectiveImpl node) {
834+
if (node.libraryExport case var libraryExport?) {
835+
if (libraryExport.exportedLibrary2 case var exportedLibrary?) {
836+
assembler.addLibraryFragmentReference(
837+
target: exportedLibrary.firstFragment,
838+
uriOffset: node.uri.offset,
839+
uriLength: node.uri.length,
840+
);
841+
}
842+
}
843+
836844
super.visitExportDirective(node);
837845
}
838846

@@ -898,9 +906,17 @@ class _IndexContributor extends GeneralizingAstVisitor {
898906
}
899907

900908
@override
901-
void visitImportDirective(ImportDirective node) {
902-
var element = node.libraryImport;
903-
recordUriReference(element?.importedLibrary2, node.uri);
909+
void visitImportDirective(covariant ImportDirectiveImpl node) {
910+
if (node.libraryImport case var libraryImport?) {
911+
if (libraryImport.importedLibrary2 case var importedLibrary?) {
912+
assembler.addLibraryFragmentReference(
913+
target: importedLibrary.firstFragment,
914+
uriOffset: node.uri.offset,
915+
uriLength: node.uri.length,
916+
);
917+
}
918+
}
919+
904920
super.visitImportDirective(node);
905921
}
906922

pkg/analyzer/lib/src/dart/analysis/library_analyzer.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1111,7 +1111,7 @@ class LibraryAnalyzer {
11111111
/// Analysis result for single file.
11121112
class UnitAnalysisResult {
11131113
final FileState file;
1114-
final CompilationUnit unit;
1114+
final CompilationUnitImpl unit;
11151115
final List<AnalysisError> errors;
11161116

11171117
UnitAnalysisResult(this.file, this.unit, this.errors);

pkg/analyzer/lib/src/dart/analysis/results.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66

77
import 'package:analyzer/dart/analysis/results.dart';
88
import 'package:analyzer/dart/analysis/session.dart';
9-
import 'package:analyzer/dart/ast/ast.dart';
109
import 'package:analyzer/dart/ast/token.dart';
1110
import 'package:analyzer/dart/ast/visitor.dart';
1211
import 'package:analyzer/dart/element/element.dart';
@@ -16,6 +15,7 @@ import 'package:analyzer/error/error.dart';
1615
import 'package:analyzer/file_system/file_system.dart';
1716
import 'package:analyzer/source/line_info.dart';
1817
import 'package:analyzer/src/dart/analysis/file_state.dart';
18+
import 'package:analyzer/src/dart/ast/ast.dart';
1919
import 'package:analyzer/src/dart/element/element.dart';
2020
import 'package:analyzer/src/dart/element/type_provider.dart';
2121
import 'package:analyzer/src/dart/element/type_system.dart';
@@ -490,7 +490,7 @@ class ResolvedLibraryResultImpl extends AnalysisResultImpl
490490
class ResolvedUnitResultImpl extends FileResultImpl
491491
implements ResolvedUnitResult {
492492
@override
493-
final CompilationUnit unit;
493+
final CompilationUnitImpl unit;
494494

495495
@override
496496
final List<AnalysisError> errors;
@@ -538,5 +538,5 @@ class UnitElementResultImpl extends FileResultImpl
538538
});
539539

540540
@override
541-
LibraryFragment get fragment => element;
541+
CompilationUnitElementImpl get fragment => element;
542542
}

0 commit comments

Comments
 (0)