Skip to content

Commit 840ea93

Browse files
authored
Merge pull request dart-archive/linter#3589 from scheglov/analyzer-4.5.0
Require analyze 4.5.0, stop using deprecated APIs.
2 parents 96ad07d + 329083d commit 840ea93

File tree

52 files changed

+111
-113
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

52 files changed

+111
-113
lines changed

lib/src/ast.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ bool isPrivate(Token? name) =>
156156

157157
/// Returns `true` if the given [ClassMember] is a public method.
158158
bool isPublicMethod(ClassMember m) {
159-
var declaredElement = m.declaredElement;
159+
var declaredElement = m.declaredElement2;
160160
return declaredElement != null && isMethod(m) && declaredElement.isPublic;
161161
}
162162

@@ -277,7 +277,7 @@ bool _checkForSimpleGetter(MethodDeclaration getter, Expression? expression) {
277277
if (expression is SimpleIdentifier) {
278278
var staticElement = expression.staticElement;
279279
if (staticElement is PropertyAccessorElement) {
280-
var enclosingElement = getter.declaredElement?.enclosingElement3;
280+
var enclosingElement = getter.declaredElement2?.enclosingElement3;
281281
// Skipping library level getters, test that the enclosing element is
282282
// the same
283283
if (staticElement.enclosingElement3 == enclosingElement) {

lib/src/extensions.dart

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -226,16 +226,12 @@ extension InterfaceTypeExtension on InterfaceType {
226226
extension MethodDeclarationExtension on MethodDeclaration {
227227
/// Returns whether this method is an override of a method in any supertype.
228228
bool get isOverride {
229-
var parent = this.parent;
230-
if (parent is! ClassOrMixinDeclaration) {
231-
return false;
232-
}
233-
var name = declaredElement?.name;
229+
var name = declaredElement2?.name;
234230
if (name == null) {
235231
return false;
236232
}
237-
var parentElement = parent.declaredElement;
238-
if (parentElement == null) {
233+
var parentElement = declaredElement2?.enclosingElement3;
234+
if (parentElement is! InterfaceElement) {
239235
return false;
240236
}
241237
var parentLibrary = parentElement.library;

lib/src/rules/annotate_overrides.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,14 +100,14 @@ class _Visitor extends SimpleAstVisitor<void> {
100100
if (node.isStatic) return;
101101

102102
for (var field in node.fields.variables) {
103-
check(field.declaredElement, field.name2);
103+
check(field.declaredElement2, field.name2);
104104
}
105105
}
106106

107107
@override
108108
void visitMethodDeclaration(MethodDeclaration node) {
109109
if (node.isStatic) return;
110110

111-
check(node.declaredElement, node.name2);
111+
check(node.declaredElement2, node.name2);
112112
}
113113
}

lib/src/rules/avoid_classes_with_only_static_members.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ class _Visitor extends SimpleAstVisitor<void> {
7878

7979
@override
8080
void visitClassDeclaration(ClassDeclaration node) {
81-
var declaredElement = node.declaredElement;
81+
var declaredElement = node.declaredElement2;
8282
if (declaredElement == null) {
8383
return;
8484
}

lib/src/rules/avoid_equals_and_hash_code_on_mutable_classes.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ class _Visitor extends SimpleAstVisitor<void> {
108108

109109
ClassElement? _getClassForMethod(MethodDeclaration node) =>
110110
// todo (pq): should this be ClassOrMixinDeclaration ?
111-
node.thisOrAncestorOfType<ClassDeclaration>()?.declaredElement;
111+
node.thisOrAncestorOfType<ClassDeclaration>()?.declaredElement2;
112112

113113
bool _hasImmutableAnnotation(ClassElement clazz) {
114114
var inheritedAndSelfElements = <InterfaceElement>[

lib/src/rules/avoid_field_initializers_in_const_classes.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ class _Visitor extends SimpleAstVisitor<void> {
104104
// only const class
105105
var parent = node.parent;
106106
if (parent is ClassDeclaration) {
107-
var declaredElement = parent.declaredElement;
107+
var declaredElement = parent.declaredElement2;
108108
if (declaredElement == null) {
109109
return;
110110
}

lib/src/rules/avoid_init_to_null.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ class _Visitor extends SimpleAstVisitor<void> {
105105

106106
@override
107107
void visitVariableDeclaration(VariableDeclaration node) {
108-
var declaredElement = node.declaredElement;
108+
var declaredElement = node.declaredElement2;
109109
if (declaredElement != null &&
110110
!node.isConst &&
111111
!node.isFinal &&

lib/src/rules/avoid_positional_boolean_parameters.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ class _Visitor extends SimpleAstVisitor<void> {
6363

6464
@override
6565
void visitConstructorDeclaration(ConstructorDeclaration node) {
66-
var declaredElement = node.declaredElement;
66+
var declaredElement = node.declaredElement2;
6767
if (declaredElement != null && !declaredElement.isPrivate) {
6868
var parametersToLint =
6969
node.parameters.parameters.where(_isFormalParameterToLint);
@@ -75,7 +75,7 @@ class _Visitor extends SimpleAstVisitor<void> {
7575

7676
@override
7777
void visitFunctionDeclaration(FunctionDeclaration node) {
78-
var declaredElement = node.declaredElement;
78+
var declaredElement = node.declaredElement2;
7979
if (declaredElement != null && !declaredElement.isPrivate) {
8080
var parametersToLint = node.functionExpression.parameters?.parameters
8181
.where(_isFormalParameterToLint);
@@ -87,7 +87,7 @@ class _Visitor extends SimpleAstVisitor<void> {
8787

8888
@override
8989
void visitMethodDeclaration(MethodDeclaration node) {
90-
var declaredElement = node.declaredElement;
90+
var declaredElement = node.declaredElement2;
9191
if (declaredElement != null &&
9292
!node.isSetter &&
9393
!declaredElement.isPrivate &&

lib/src/rules/avoid_renaming_method_parameters.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ class _Visitor extends SimpleAstVisitor<void> {
8484
if (parentNode is! Declaration) {
8585
return;
8686
}
87-
var parentElement = parentNode.declaredElement;
87+
var parentElement = parentNode.declaredElement2;
8888
// Note: there are no override semantics with extension methods.
8989
if (parentElement is! ClassElement) {
9090
return;

lib/src/rules/avoid_returning_null.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ class _Visitor extends SimpleAstVisitor<void> {
9191

9292
@override
9393
void visitMethodDeclaration(MethodDeclaration node) {
94-
var declaredElement = node.declaredElement;
94+
var declaredElement = node.declaredElement2;
9595
if (declaredElement != null &&
9696
_isPrimitiveType(declaredElement.returnType)) {
9797
_visitFunctionBody(node.body);

lib/src/rules/avoid_returning_null_for_future.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ class _Visitor extends SimpleAstVisitor<void> {
7474
returnType = parent.declaredElement?.returnType;
7575
isAsync = parent.body.isAsynchronous;
7676
} else if (parent is MethodDeclaration) {
77-
returnType = parent.declaredElement?.returnType;
77+
returnType = parent.declaredElement2?.returnType;
7878
isAsync = parent.body.isAsynchronous;
7979
} else {
8080
throw StateError('unexpected type');

lib/src/rules/avoid_returning_null_for_void.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ class _Visitor extends SimpleAstVisitor<void> {
9191
type = parent.declaredElement?.returnType;
9292
isAsync = parent.body.isAsynchronous;
9393
} else if (parent is MethodDeclaration) {
94-
type = parent.declaredElement?.returnType;
94+
type = parent.declaredElement2?.returnType;
9595
isAsync = parent.body.isAsynchronous;
9696
} else {
9797
throw StateError('unexpected type');

lib/src/rules/avoid_returning_this.dart

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -78,15 +78,17 @@ class _Visitor extends SimpleAstVisitor<void> {
7878
if (node.isOperator) return;
7979

8080
var parent = node.parent;
81-
if (parent is ClassOrMixinDeclaration || parent is EnumDeclaration) {
81+
if (parent is ClassDeclaration ||
82+
parent is EnumDeclaration ||
83+
parent is MixinDeclaration) {
8284
if (node.isOverride) {
8385
return;
8486
}
8587

86-
var returnType = node.declaredElement?.returnType;
88+
var returnType = node.declaredElement2?.returnType;
8789
if (returnType is InterfaceType &&
8890
// ignore: cast_nullable_to_non_nullable
89-
returnType.element2 == (parent as Declaration).declaredElement) {
91+
returnType.element2 == (parent as Declaration).declaredElement2) {
9092
} else {
9193
return;
9294
}

lib/src/rules/avoid_shadowing_type_parameters.dart

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -93,15 +93,16 @@ class _Visitor extends SimpleAstVisitor<void> {
9393
var parent = node.parent;
9494

9595
while (parent != null) {
96-
if (parent is ClassOrMixinDeclaration) {
97-
_checkForShadowing(typeParameters, parent.typeParameters,
98-
parent is ClassDeclaration ? 'class' : 'mixin');
96+
if (parent is ClassDeclaration) {
97+
_checkForShadowing(typeParameters, parent.typeParameters, 'class');
9998
} else if (parent is EnumDeclaration) {
10099
_checkForShadowing(typeParameters, parent.typeParameters, 'enum');
101100
} else if (parent is ExtensionDeclaration) {
102101
_checkForShadowing(typeParameters, parent.typeParameters, 'extension');
103102
} else if (parent is MethodDeclaration) {
104103
_checkForShadowing(typeParameters, parent.typeParameters, 'method');
104+
} else if (parent is MixinDeclaration) {
105+
_checkForShadowing(typeParameters, parent.typeParameters, 'mixin');
105106
} else if (parent is FunctionDeclaration) {
106107
_checkForShadowing(typeParameters,
107108
parent.functionExpression.typeParameters, 'function');

lib/src/rules/avoid_type_to_string.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -91,17 +91,17 @@ class _Visitor extends SimpleAstVisitor {
9191

9292
@override
9393
void visitClassDeclaration(ClassDeclaration node) {
94-
thisType = node.declaredElement?.thisType;
94+
thisType = node.declaredElement2?.thisType;
9595
}
9696

9797
@override
9898
void visitMixinDeclaration(MixinDeclaration node) {
99-
thisType = node.declaredElement?.thisType;
99+
thisType = node.declaredElement2?.thisType;
100100
}
101101

102102
@override
103103
void visitExtensionDeclaration(ExtensionDeclaration node) {
104-
var extendedType = node.declaredElement?.extendedType;
104+
var extendedType = node.declaredElement2?.extendedType;
105105
// Might not be InterfaceType. Ex: visiting an extension on a dynamic type.
106106
thisType = extendedType is InterfaceType ? extendedType : null;
107107
}

lib/src/rules/avoid_void_async.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ class _Visitor extends SimpleAstVisitor<void> {
6868

6969
@override
7070
void visitFunctionDeclaration(FunctionDeclaration node) {
71-
if (_isAsync(node.declaredElement) &&
71+
if (_isAsync(node.declaredElement2) &&
7272
_isVoid(node.returnType) &&
7373
node.name2.lexeme != 'main') {
7474
rule.reportLintForToken(node.name2);
@@ -77,7 +77,7 @@ class _Visitor extends SimpleAstVisitor<void> {
7777

7878
@override
7979
void visitMethodDeclaration(MethodDeclaration node) {
80-
if (_isAsync(node.declaredElement) && _isVoid(node.returnType)) {
80+
if (_isAsync(node.declaredElement2) && _isVoid(node.returnType)) {
8181
rule.reportLintForToken(node.name2);
8282
}
8383
}

lib/src/rules/cascade_invocations.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ Element? _getElementFromVariableDeclarationStatement(
6767
// In such a case, we should not return any cascadable element here.
6868
return null;
6969
}
70-
return variable.declaredElement;
70+
return variable.declaredElement2;
7171
}
7272
return null;
7373
}

lib/src/rules/deprecated_consistency.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ class _Visitor extends SimpleAstVisitor<void> {
7474

7575
@override
7676
void visitConstructorDeclaration(ConstructorDeclaration node) {
77-
var constructorElement = node.declaredElement;
77+
var constructorElement = node.declaredElement2;
7878
if (constructorElement != null &&
7979
constructorElement.enclosingElement3.hasDeprecated &&
8080
!constructorElement.hasDeprecated) {

lib/src/rules/diagnostic_describe_all_properties.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ class _Visitor extends SimpleAstVisitor {
122122
@override
123123
void visitClassDeclaration(ClassDeclaration node) {
124124
// We only care about Diagnosticables.
125-
var type = node.declaredElement?.thisType;
125+
var type = node.declaredElement2?.thisType;
126126
if (!DartTypeUtilities.implementsInterface(type, 'Diagnosticable', '')) {
127127
return;
128128
}
@@ -132,15 +132,15 @@ class _Visitor extends SimpleAstVisitor {
132132
if (member is MethodDeclaration && member.isGetter) {
133133
if (!member.isStatic &&
134134
!skipForDiagnostic(
135-
element: member.declaredElement,
135+
element: member.declaredElement2,
136136
name: member.name2,
137137
type: member.returnType?.type,
138138
)) {
139139
properties.add(member.name2);
140140
}
141141
} else if (member is FieldDeclaration) {
142142
for (var v in member.fields.variables) {
143-
var declaredElement = v.declaredElement;
143+
var declaredElement = v.declaredElement2;
144144
if (declaredElement != null &&
145145
!declaredElement.isStatic &&
146146
!skipForDiagnostic(

lib/src/rules/no_logic_in_create_state.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ class _Visitor extends SimpleAstVisitor {
8787

8888
var parent = node.parent;
8989
if (parent is! ClassDeclaration ||
90-
!isStatefulWidget(parent.declaredElement)) {
90+
!isStatefulWidget(parent.declaredElement2)) {
9191
return;
9292
}
9393
var body = node.body;

lib/src/rules/no_runtimeType_toString.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ class _Visitor extends SimpleAstVisitor<void> {
102102
if (n is MixinDeclaration) return true;
103103
if (n is ClassDeclaration && n.abstractKeyword != null) return true;
104104
if (n is ExtensionDeclaration) {
105-
var declaredElement = n.declaredElement;
105+
var declaredElement = n.declaredElement2;
106106
if (declaredElement != null) {
107107
var extendedType = declaredElement.extendedType;
108108
if (extendedType is InterfaceType) {

lib/src/rules/one_member_abstracts.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ class _Visitor extends SimpleAstVisitor<void> {
5959

6060
@override
6161
void visitClassDeclaration(ClassDeclaration node) {
62-
var declaredElement = node.declaredElement;
62+
var declaredElement = node.declaredElement2;
6363
if (declaredElement == null) {
6464
return;
6565
}

lib/src/rules/overridden_fields.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ class _Visitor extends SimpleAstVisitor<void> {
125125
}
126126

127127
for (var variable in node.fields.variables) {
128-
var declaredElement = variable.declaredElement;
128+
var declaredElement = variable.declaredElement2;
129129
if (declaredElement != null) {
130130
var field = _getOverriddenMember(declaredElement);
131131
if (field != null && !field.isAbstract) {

lib/src/rules/prefer_asserts_in_initializer_lists.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -140,12 +140,12 @@ class _Visitor extends SimpleAstVisitor<void> {
140140

141141
@override
142142
void visitClassDeclaration(ClassDeclaration node) {
143-
_classAndSuperClasses = _ClassAndSuperClasses(node.declaredElement);
143+
_classAndSuperClasses = _ClassAndSuperClasses(node.declaredElement2);
144144
}
145145

146146
@override
147147
void visitConstructorDeclaration(ConstructorDeclaration node) {
148-
var declaredElement = node.declaredElement;
148+
var declaredElement = node.declaredElement2;
149149
if (declaredElement == null || declaredElement.isFactory) return;
150150

151151
var body = node.body;

lib/src/rules/prefer_const_constructors_in_immutables.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ class _Visitor extends SimpleAstVisitor<void> {
7474

7575
@override
7676
void visitConstructorDeclaration(ConstructorDeclaration node) {
77-
var element = node.declaredElement;
77+
var element = node.declaredElement2;
7878
if (element == null) {
7979
return;
8080
}
@@ -93,7 +93,7 @@ class _Visitor extends SimpleAstVisitor<void> {
9393
}
9494

9595
bool _hasConstConstructorInvocation(ConstructorDeclaration node) {
96-
var declaredElement = node.declaredElement;
96+
var declaredElement = node.declaredElement2;
9797
if (declaredElement == null) {
9898
return false;
9999
}

lib/src/rules/prefer_constructors_over_static_methods.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,11 +78,11 @@ class _Visitor extends SimpleAstVisitor<void> {
7878
var returnType = node.returnType?.type;
7979
var parent = node.parent;
8080
if (node.isStatic &&
81-
parent is ClassOrMixinDeclaration &&
81+
parent is ClassDeclaration &&
8282
returnType is InterfaceType &&
8383
parent.typeParameters == null &&
8484
node.typeParameters == null) {
85-
var declaredElement = parent.declaredElement;
85+
var declaredElement = parent.declaredElement2;
8686
if (declaredElement != null) {
8787
var interfaceType = declaredElement.thisType;
8888
if (!context.typeSystem.isAssignableTo(returnType, interfaceType)) {

lib/src/rules/prefer_final_fields.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ class _Visitor extends SimpleAstVisitor<void> {
169169
}
170170

171171
for (var variable in fields.variables) {
172-
var element = variable.declaredElement;
172+
var element = variable.declaredElement2;
173173

174174
if (element is PropertyInducingElement &&
175175
element.isPrivate &&

lib/src/rules/prefer_final_in_for_each.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ class _Visitor extends SimpleAstVisitor<void> {
7979
}
8080

8181
var function = node.thisOrAncestorOfType<FunctionBody>();
82-
var loopVariableElement = loopVariable.declaredElement;
82+
var loopVariableElement = loopVariable.declaredElement2;
8383
if (function != null &&
8484
loopVariableElement != null &&
8585
!function.isPotentiallyMutatedInScope(loopVariableElement)) {

lib/src/rules/prefer_final_locals.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ class _Visitor extends SimpleAstVisitor<void> {
8181
if (variable.equals == null || variable.initializer == null) {
8282
return;
8383
}
84-
var declaredElement = variable.declaredElement;
84+
var declaredElement = variable.declaredElement2;
8585
if (declaredElement != null &&
8686
function.isPotentiallyMutatedInScope(declaredElement)) {
8787
return;

lib/src/rules/prefer_foreach.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ class _PreferForEachVisitor extends SimpleAstVisitor {
8484
void visitForStatement(ForStatement node) {
8585
var loopParts = node.forLoopParts;
8686
if (loopParts is ForEachPartsWithDeclaration) {
87-
var element = loopParts.loopVariable.declaredElement;
87+
var element = loopParts.loopVariable.declaredElement2;
8888
if (element != null) {
8989
forEachStatement = node;
9090
this.element = element;

0 commit comments

Comments
 (0)