Skip to content

Commit 96831c9

Browse files
pqCommit Queue
authored and
Commit Queue
committed
extension type support for unnecessary_getters_setters
Fixes: https://github.com/dart-lang/linter/issues/4711 Change-Id: I79d75c3f9bd17333b9e1370f9057202a0c9cce6f Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/322500 Reviewed-by: Brian Wilkerson <[email protected]> Commit-Queue: Phil Quitslund <[email protected]>
1 parent 9e071c5 commit 96831c9

File tree

2 files changed

+23
-0
lines changed

2 files changed

+23
-0
lines changed

pkg/linter/lib/src/rules/unnecessary_getters_setters.dart

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ class UnnecessaryGettersSetters extends LintRule {
6868
NodeLintRegistry registry, LinterContext context) {
6969
var visitor = _Visitor(this);
7070
registry.addClassDeclaration(this, visitor);
71+
registry.addExtensionTypeDeclaration(this, visitor);
7172
}
7273
}
7374

@@ -81,6 +82,11 @@ class _Visitor extends SimpleAstVisitor<void> {
8182
_check(node.members);
8283
}
8384

85+
@override
86+
void visitExtensionTypeDeclaration(ExtensionTypeDeclaration node) {
87+
_check(node.members);
88+
}
89+
8490
void _check(NodeList<ClassMember> members) {
8591
var getters = <String, MethodDeclaration>{};
8692
var setters = <String, MethodDeclaration>{};

pkg/linter/test/rules/unnecessary_getters_setters_test.dart

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@ main() {
1414

1515
@reflectiveTest
1616
class UnnecessaryGettersSettersTest extends LintRuleTest {
17+
@override
18+
List<String> get experiments => ['inline-class'];
19+
1720
@override
1821
String get lintRule => 'unnecessary_getters_setters';
1922

@@ -76,6 +79,20 @@ class C {
7679
''');
7780
}
7881

82+
test_unnecessary_getterAndSetter_extensionType() async {
83+
await assertDiagnostics(r'''
84+
extension type E(int i) {
85+
static int? _x;
86+
static int? get x => _x;
87+
static set x(int? value) {
88+
_x = value;
89+
}
90+
}
91+
''', [
92+
lint(62, 1),
93+
]);
94+
}
95+
7996
test_unnecessary_getterAndSetterHaveBlockBody() async {
8097
await assertDiagnostics(r'''
8198
class C {

0 commit comments

Comments
 (0)