Skip to content

Commit af25277

Browse files
scheglovCommit Queue
authored andcommitted
Elements. Migrate lib/src/cider/fixes.dart
Change-Id: I01867f48ac6d39c65a9a21961079232399e05c1b Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/399029 Commit-Queue: Konstantin Shcheglov <[email protected]> Reviewed-by: Phil Quitslund <[email protected]>
1 parent f988136 commit af25277

File tree

10 files changed

+23
-70
lines changed

10 files changed

+23
-70
lines changed

pkg/analysis_server/analyzer_use_new_elements.txt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
11
lib/plugin/protocol/protocol_dart.dart
22
lib/src/analysis_server.dart
3-
lib/src/cider/fixes.dart
43
lib/src/cider/rename.dart
54
lib/src/computer/computer_call_hierarchy.dart
65
lib/src/computer/computer_documentation.dart
76
lib/src/domains/analysis/implemented_dart.dart
87
lib/src/domains/analysis/occurrences_dart.dart
9-
lib/src/handler/legacy/completion_get_suggestions2.dart
108
lib/src/handler/legacy/edit_get_available_refactorings.dart
119
lib/src/handler/legacy/legacy_handler.dart
1210
lib/src/handler/legacy/search_find_element_references.dart

pkg/analysis_server/lib/src/cider/fixes.dart

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import 'package:analysis_server_plugin/edit/fix/dart_fix_context.dart';
66
import 'package:analysis_server_plugin/edit/fix/fix.dart';
77
import 'package:analysis_server_plugin/src/correction/dart_change_workspace.dart';
88
import 'package:analysis_server_plugin/src/correction/fix_processor.dart';
9-
import 'package:analyzer/dart/element/element.dart';
9+
import 'package:analyzer/dart/element/element2.dart';
1010
import 'package:analyzer/error/error.dart';
1111
import 'package:analyzer/instrumentation/service.dart';
1212
import 'package:analyzer/source/line_info.dart';
@@ -83,23 +83,23 @@ class _CiderDartFixContextImpl extends DartFixContext {
8383
}) : super(instrumentationService: InstrumentationService.NULL_SERVICE);
8484

8585
@override
86-
Future<Map<LibraryElement, Element>> getTopLevelDeclarations(
86+
Future<Map<LibraryElement2, Element2>> getTopLevelDeclarations(
8787
String name,
8888
) async {
89-
var result = <LibraryElement, Element>{};
89+
var result = <LibraryElement2, Element2>{};
9090
var files = _fileResolver.getFilesWithTopLevelDeclarations(name);
9191
for (var file in files) {
9292
var kind = file.kind;
9393
if (kind is LibraryFileKind) {
9494
var libraryElement = await _fileResolver.getLibraryByUri2(
9595
uriStr: file.uriStr,
9696
);
97-
TopLevelDeclarations.addElement(result, libraryElement, name);
97+
TopLevelDeclarations.addElement2(result, libraryElement, name);
9898
}
9999
}
100100
return result;
101101
}
102102

103103
@override
104-
Stream<LibraryElement> librariesWithExtensions(String memberName) async* {}
104+
Stream<LibraryElement2> librariesWithExtensions(String memberName) async* {}
105105
}

pkg/analysis_server/lib/src/services/correction/dart/import_library.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -287,7 +287,7 @@ class ImportLibrary extends MultiCorrectionProducer {
287287
}
288288
}
289289
// Find new top-level declarations.
290-
var librariesWithElements = await getTopLevelDeclarations2(name);
290+
var librariesWithElements = await getTopLevelDeclarations(name);
291291
for (var libraryEntry in librariesWithElements.entries) {
292292
var libraryElement = libraryEntry.key;
293293
var declaration = libraryEntry.value;
@@ -426,7 +426,7 @@ class ImportLibrary extends MultiCorrectionProducer {
426426
memberName,
427427
);
428428
var producers = <ResolvedCorrectionProducer>[];
429-
await for (var libraryToImport in librariesWithExtensions2(memberName)) {
429+
await for (var libraryToImport in librariesWithExtensions(memberName)) {
430430
producers.addAll(
431431
_importExtensionInLibrary(libraryToImport, targetType, name),
432432
);

pkg/analysis_server/lib/src/services/correction/dart/use_different_division_operator.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ class _UseDifferentDivisionOperator extends ResolvedCorrectionProducer {
108108
otherOperator.lexeme,
109109
);
110110
var hasNoExtensionWithOtherDivisionOperator =
111-
await librariesWithExtensions2(otherOperator.lexeme).where((library) {
111+
await librariesWithExtensions(otherOperator.lexeme).where((library) {
112112
return library.exportedExtensions
113113
.havingMemberWithBaseName(name)
114114
.applicableTo(

pkg/analysis_server_plugin/lib/edit/dart/correction_producer.dart

Lines changed: 3 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ import 'package:analyzer/src/dart/element/element.dart';
2727
import 'package:analyzer/src/dart/element/inheritance_manager3.dart';
2828
import 'package:analyzer/src/dart/element/type.dart';
2929
import 'package:analyzer/src/utilities/extensions/ast.dart';
30-
import 'package:analyzer/src/utilities/extensions/element.dart';
3130
import 'package:analyzer_plugin/utilities/assist/assist.dart';
3231
import 'package:analyzer_plugin/utilities/change_builder/change_builder_core.dart';
3332
import 'package:analyzer_plugin/utilities/fixes/fixes.dart';
@@ -775,21 +774,10 @@ sealed class _AbstractCorrectionProducer<T extends ParsedUnitResult> {
775774
/// library, and has the requested base name.
776775
///
777776
/// For getters and setters the corresponding top-level variable is returned.
778-
Future<Map<LibraryElement, Element>> getTopLevelDeclarations(
779-
String baseName,
780-
) =>
781-
_context.dartFixContext!.getTopLevelDeclarations(baseName);
782-
783-
/// Returns the mapping from a library (that is available to this context) to
784-
/// a top-level declaration that is exported (not necessary declared) by this
785-
/// library, and has the requested base name.
786-
///
787-
/// For getters and setters the corresponding top-level variable is returned.
788-
Future<Map<LibraryElement2, Element2>> getTopLevelDeclarations2(
777+
Future<Map<LibraryElement2, Element2>> getTopLevelDeclarations(
789778
String baseName,
790779
) async {
791-
var map = await _context.dartFixContext!.getTopLevelDeclarations(baseName);
792-
return map.map((key, value) => MapEntry(key.asElement2, value.asElement2!));
780+
return await _context.dartFixContext!.getTopLevelDeclarations(baseName);
793781
}
794782

795783
/// Returns whether the selection covers an operator of the given
@@ -816,13 +804,7 @@ sealed class _AbstractCorrectionProducer<T extends ParsedUnitResult> {
816804

817805
/// Returns libraries with extensions that declare non-static public
818806
/// extension members with the [memberName].
819-
Stream<LibraryElement> librariesWithExtensions(String memberName) {
807+
Stream<LibraryElement2> librariesWithExtensions(String memberName) {
820808
return _context.dartFixContext!.librariesWithExtensions(memberName);
821809
}
822-
823-
/// Returns libraries with extensions that declare non-static public
824-
/// extension members with the [memberName].
825-
Stream<LibraryElement2> librariesWithExtensions2(String memberName) {
826-
return _context.dartFixContext!.librariesWithExtensions2(memberName);
827-
}
828810
}

pkg/analysis_server_plugin/lib/edit/fix/dart_fix_context.dart

Lines changed: 2 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
import 'package:analysis_server_plugin/edit/fix/fix_context.dart';
66
import 'package:analysis_server_plugin/src/correction/change_workspace.dart';
77
import 'package:analyzer/dart/analysis/results.dart';
8-
import 'package:analyzer/dart/element/element.dart';
98
import 'package:analyzer/dart/element/element2.dart';
109
import 'package:analyzer/error/error.dart';
1110
import 'package:analyzer/instrumentation/service.dart';
@@ -56,42 +55,15 @@ class DartFixContext implements FixContext {
5655
/// this library, and has the requested base name.
5756
///
5857
/// For getters and setters the corresponding top-level variable is returned.
59-
Future<Map<LibraryElement, Element>> getTopLevelDeclarations(
58+
Future<Map<LibraryElement2, Element2>> getTopLevelDeclarations(
6059
String name) async {
6160
return TopLevelDeclarations(unitResult).withName(name);
6261
}
6362

6463
/// Returns libraries with extensions that declare non-static public
6564
/// extension members with the [memberName].
6665
// TODO(srawlins): The documentation above is wrong; `memberName` is unused.
67-
Stream<LibraryElement> librariesWithExtensions(String memberName) async* {
68-
var analysisContext = unitResult.session.analysisContext;
69-
var analysisDriver = (analysisContext as DriverBasedAnalysisContext).driver;
70-
await analysisDriver.discoverAvailableFiles();
71-
72-
var fsState = analysisDriver.fsState;
73-
var filter = FileStateFilter(
74-
fsState.getFileForPath(unitResult.path),
75-
);
76-
77-
for (var file in fsState.knownFiles.toList()) {
78-
if (!filter.shouldInclude(file)) {
79-
continue;
80-
}
81-
82-
var elementResult = await analysisDriver.getLibraryByUri(file.uriStr);
83-
if (elementResult is! LibraryElementResult) {
84-
continue;
85-
}
86-
87-
yield elementResult.element;
88-
}
89-
}
90-
91-
/// Returns libraries with extensions that declare non-static public
92-
/// extension members with the [memberName].
93-
// TODO(srawlins): The documentation above is wrong; `memberName` is unused.
94-
Stream<LibraryElement2> librariesWithExtensions2(String memberName) async* {
66+
Stream<LibraryElement2> librariesWithExtensions(String memberName) async* {
9567
var analysisContext = unitResult.session.analysisContext;
9668
if (analysisContext is! DriverBasedAnalysisContext) {
9769
return;

pkg/analyzer/lib/src/dart/micro/analysis_context.dart

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import 'package:analyzer/src/dart/element/inheritance_manager3.dart';
1919
import 'package:analyzer/src/dart/micro/resolve_file.dart';
2020
import 'package:analyzer/src/generated/source.dart';
2121
import 'package:analyzer/src/summary2/linked_element_factory.dart';
22+
import 'package:analyzer/src/utilities/extensions/element.dart';
2223

2324
MicroContextObjects createMicroContextObjects({
2425
required FileResolver fileResolver,
@@ -162,7 +163,7 @@ class _MicroAnalysisSessionImpl extends AnalysisSessionImpl {
162163
var element = await analysisContext.fileResolver.getLibraryByUri2(
163164
uriStr: uriStr,
164165
);
165-
return LibraryElementResultImpl(element);
166+
return LibraryElementResultImpl(element.asElement);
166167
}
167168

168169
@override

pkg/analyzer/lib/src/dart/micro/resolve_file.dart

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import 'package:analyzer/dart/analysis/declared_variables.dart';
88
import 'package:analyzer/dart/analysis/features.dart';
99
import 'package:analyzer/dart/analysis/results.dart';
1010
import 'package:analyzer/dart/element/element.dart';
11+
import 'package:analyzer/dart/element/element2.dart';
1112
import 'package:analyzer/error/error.dart';
1213
import 'package:analyzer/file_system/file_system.dart';
1314
import 'package:analyzer/source/line_info.dart';
@@ -389,7 +390,7 @@ class FileResolver {
389390
return fsState.getFilesWithTopLevelDeclarations(name);
390391
}
391392

392-
Future<LibraryElement> getLibraryByUri2({
393+
Future<LibraryElement2> getLibraryByUri2({
393394
required String uriStr,
394395
OperationPerformanceImpl? performance,
395396
}) async {

pkg/analyzer/lib/src/services/top_level_declarations.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ class TopLevelDeclarations {
112112
/// a top-level declaration that is exported (not necessary declared) by this
113113
/// library, and has the requested base name. For getters and setters the
114114
/// corresponding top-level variable is returned.
115-
Future<Map<LibraryElement, Element>> withName(String baseName) async {
115+
Future<Map<LibraryElement2, Element2>> withName(String baseName) async {
116116
var analysisDriver = _analysisContext.driver;
117117
await analysisDriver.discoverAvailableFiles();
118118

@@ -121,7 +121,7 @@ class TopLevelDeclarations {
121121
fsState.getFileForPath(resolvedUnit.path),
122122
);
123123

124-
var result = <LibraryElement, Element>{};
124+
var result = <LibraryElement2, Element2>{};
125125

126126
for (var file in fsState.knownFiles.toList()) {
127127
if (!filter.shouldInclude(file)) {
@@ -133,7 +133,7 @@ class TopLevelDeclarations {
133133
continue;
134134
}
135135

136-
addElement(result, elementResult.element, baseName);
136+
addElement2(result, elementResult.element2, baseName);
137137
}
138138

139139
return result;

pkg/analyzer/test/src/dart/micro/simple_file_resolver_test.dart

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1479,14 +1479,14 @@ class A {}
14791479
var element = await fileResolver.getLibraryByUri2(
14801480
uriStr: 'package:dart.my/a.dart',
14811481
);
1482-
expect(element.definingCompilationUnit.classes, hasLength(1));
1482+
expect(element.classes, hasLength(1));
14831483
}
14841484

14851485
test_getLibraryByUri_notExistingFile() async {
14861486
var element = await fileResolver.getLibraryByUri2(
14871487
uriStr: 'package:dart.my/a.dart',
14881488
);
1489-
expect(element.definingCompilationUnit.classes, isEmpty);
1489+
expect(element.classes, isEmpty);
14901490
}
14911491

14921492
test_getLibraryByUri_partOf() async {
@@ -1663,8 +1663,7 @@ byteStore
16631663
);
16641664

16651665
// Ask types for top-level variables.
1666-
var b_unit = b_library.definingCompilationUnit;
1667-
for (var topLevelVariable in b_unit.topLevelVariables) {
1666+
for (var topLevelVariable in b_library.topLevelVariables) {
16681667
topLevelVariable.type;
16691668
}
16701669

0 commit comments

Comments
 (0)