extension type support for `avoid_shadowing_type_parameters` (dart-lang/linter#4693)

diff --git a/lib/src/rules/avoid_shadowing_type_parameters.dart b/lib/src/rules/avoid_shadowing_type_parameters.dart
index a8bb0f6..f9f7789 100644
--- a/lib/src/rules/avoid_shadowing_type_parameters.dart
+++ b/lib/src/rules/avoid_shadowing_type_parameters.dart
@@ -98,6 +98,9 @@
         _checkForShadowing(typeParameters, parent.typeParameters, 'enum');
       } else if (parent is ExtensionDeclaration) {
         _checkForShadowing(typeParameters, parent.typeParameters, 'extension');
+      } else if (parent is ExtensionTypeDeclaration) {
+        _checkForShadowing(
+            typeParameters, parent.typeParameters, 'extension type');
       } else if (parent is MethodDeclaration) {
         _checkForShadowing(typeParameters, parent.typeParameters, 'method');
       } else if (parent is MixinDeclaration) {
diff --git a/test/rules/avoid_shadowing_type_parameters_test.dart b/test/rules/avoid_shadowing_type_parameters_test.dart
index fb713ba..7cf3a51 100644
--- a/test/rules/avoid_shadowing_type_parameters_test.dart
+++ b/test/rules/avoid_shadowing_type_parameters_test.dart
@@ -8,13 +8,15 @@
 
 main() {
   defineReflectiveSuite(() {
-    defineReflectiveTests(AvoidShadowingTypeParametersEnumTest);
     defineReflectiveTests(AvoidShadowingTypeParametersTest);
   });
 }
 
 @reflectiveTest
-class AvoidShadowingTypeParametersEnumTest extends LintRuleTest {
+class AvoidShadowingTypeParametersTest extends LintRuleTest {
+  @override
+  List<String> get experiments => ['inline-class'];
+
   @override
   String get lintRule => 'avoid_shadowing_type_parameters';
 
@@ -28,12 +30,16 @@
       lint(33, 1),
     ]);
   }
-}
 
-@reflectiveTest
-class AvoidShadowingTypeParametersTest extends LintRuleTest {
-  @override
-  String get lintRule => 'avoid_shadowing_type_parameters';
+  test_extensionType() async {
+    await assertDiagnostics(r'''
+extension type E<T>(int i) {
+  void m<T>() {}
+}
+''', [
+      lint(38, 1),
+    ]);
+  }
 
   test_wrongNumberOfTypeArguments() async {
     await assertDiagnostics(r'''