Skip to content

Commit 70cab20

Browse files
scheglovCommit Queue
authored andcommitted
Elements. Migrate AddMissingSwitchCases.
Change-Id: I13be2bb76197e5212d491db83f27692ed6e8b9e9 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/389581 Reviewed-by: Phil Quitslund <[email protected]> Commit-Queue: Konstantin Shcheglov <[email protected]>
1 parent 1d5c2c2 commit 70cab20

File tree

3 files changed

+14
-4
lines changed

3 files changed

+14
-4
lines changed

pkg/analysis_server/analyzer_use_new_elements.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -234,6 +234,7 @@ lib/src/services/correction/dart/add_missing_enum_like_case_clauses.dart
234234
lib/src/services/correction/dart/add_missing_parameter.dart
235235
lib/src/services/correction/dart/add_missing_parameter_named.dart
236236
lib/src/services/correction/dart/add_missing_required_argument.dart
237+
lib/src/services/correction/dart/add_missing_switch_cases.dart
237238
lib/src/services/correction/dart/add_ne_null.dart
238239
lib/src/services/correction/dart/add_null_check.dart
239240
lib/src/services/correction/dart/add_override.dart

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

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -59,8 +59,8 @@ class AddMissingSwitchCases extends ResolvedCorrectionProducer {
5959
bool _hasInaccessibleEnumMemberPart(List<MissingPatternPart> parts) {
6060
for (var part in parts) {
6161
if (part is MissingPatternEnumValuePart &&
62-
(part.enumElement.isPrivate || part.value.isPrivate) &&
63-
libraryElement != part.enumElement.library) {
62+
(part.enumElement2.isPrivate || part.value2.isPrivate) &&
63+
libraryElement2 != part.enumElement2.library2) {
6464
return true;
6565
}
6666
}
@@ -170,9 +170,9 @@ class AddMissingSwitchCases extends ResolvedCorrectionProducer {
170170
) {
171171
for (var part in parts) {
172172
if (part is MissingPatternEnumValuePart) {
173-
builder.writeReference(part.enumElement);
173+
builder.writeReference2(part.enumElement2);
174174
builder.write('.');
175-
builder.write(part.value.name);
175+
builder.write(part.value2.name);
176176
} else if (part is MissingPatternTextPart) {
177177
builder.write(part.text);
178178
} else if (part is MissingPatternTypePart) {

pkg/analyzer/lib/src/generated/exhaustiveness.dart

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import 'package:_fe_analyzer_shared/src/type_inference/type_analyzer_operations.
1515
import 'package:analyzer/dart/analysis/features.dart';
1616
import 'package:analyzer/dart/constant/value.dart';
1717
import 'package:analyzer/dart/element/element.dart';
18+
import 'package:analyzer/dart/element/element2.dart';
1819
import 'package:analyzer/dart/element/nullability_suffix.dart';
1920
import 'package:analyzer/dart/element/type.dart';
2021
import 'package:analyzer/src/dart/ast/ast.dart';
@@ -460,6 +461,14 @@ class MissingPatternEnumValuePart extends MissingPatternPart {
460461
required this.value,
461462
});
462463

464+
EnumElement2 get enumElement2 {
465+
return (enumElement as EnumElementImpl).element;
466+
}
467+
468+
FieldElement2 get value2 {
469+
return (value as FieldElementImpl).element;
470+
}
471+
463472
@override
464473
String toString() => value.name;
465474
}

0 commit comments

Comments
 (0)