Skip to content

Commit a9c63ea

Browse files
pqCommit Queue
authored and
Commit Queue
committed
[wildcards] support for avoid_types_as_parameter_names
Fixes: https://github.com/dart-lang/linter/issues/5051 (Depends on https://dart-review.googlesource.com/c/sdk/+/379506.) Change-Id: Ic94d24ed1e260bb2b068d298fa412c64cdae0f78 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/379527 Reviewed-by: Brian Wilkerson <[email protected]> Commit-Queue: Phil Quitslund <[email protected]>
1 parent 3abf782 commit a9c63ea

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

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

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ import 'package:analyzer/dart/ast/ast.dart';
66
import 'package:analyzer/dart/ast/token.dart';
77
import 'package:analyzer/dart/ast/visitor.dart';
88
import 'package:analyzer/dart/element/element.dart';
9+
// ignore: implementation_imports
10+
import 'package:analyzer/src/dart/element/extensions.dart';
911

1012
import '../analyzer.dart';
1113
import '../util/scope.dart';
@@ -91,7 +93,7 @@ class _Visitor extends SimpleAstVisitor<void> {
9193
return element is ClassElement ||
9294
element is ExtensionTypeElement ||
9395
element is TypeAliasElement ||
94-
element is TypeParameterElement;
96+
(element is TypeParameterElement && !element.isWildcardVariable);
9597
}
9698
return false;
9799
}

pkg/linter/test/rules/avoid_types_as_parameter_names_test.dart

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,4 +40,15 @@ class B extends A {
4040
lint(67, 6),
4141
]);
4242
}
43+
44+
test_typeParameter_wildcard() async {
45+
await assertDiagnostics(r'''
46+
class C<_> {
47+
var _;
48+
C.c(this._, _);
49+
}
50+
''', [
51+
error(WarningCode.UNUSED_FIELD, 19, 1),
52+
]);
53+
}
4354
}

0 commit comments

Comments
 (0)