Skip to content

Commit e5602b3

Browse files
pqCommit Queue
authored andcommitted
[element model] migrate avoid_futureor_void
Bug: https://github.com/dart-lang/linter/issues/5099 Change-Id: I5daf74b41840326d4928e15861cb4c80fac79f55 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/392405 Auto-Submit: Phil Quitslund <[email protected]> Commit-Queue: Brian Wilkerson <[email protected]> Commit-Queue: Phil Quitslund <[email protected]> Reviewed-by: Brian Wilkerson <[email protected]>
1 parent a452632 commit e5602b3

File tree

1 file changed

+15
-13
lines changed

1 file changed

+15
-13
lines changed

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

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@
44

55
import 'package:analyzer/dart/ast/ast.dart';
66
import 'package:analyzer/dart/ast/visitor.dart';
7-
import 'package:analyzer/dart/element/element.dart';
7+
import 'package:analyzer/dart/element/element2.dart';
88
import 'package:analyzer/dart/element/type.dart';
99
// ignore: implementation_imports
1010
import 'package:analyzer/src/dart/element/element.dart'
11-
show TypeParameterElementImpl;
11+
show TypeParameterElementImpl2;
1212

1313
import '../analyzer.dart';
1414

@@ -137,15 +137,15 @@ class _Visitor extends SimpleAstVisitor<void> {
137137
case NamedType():
138138
var arguments = typeAnnotation.typeArguments?.arguments;
139139
if (arguments != null) {
140-
var element = typeAnnotation.element?.declaration;
141-
List<TypeParameterElement>? typeParameterList;
140+
var element = typeAnnotation.element2?.baseElement;
141+
List<TypeParameterElement2>? typeParameterList;
142142
if (element != null) {
143143
switch (element) {
144-
case ClassElement(:var typeParameters):
145-
case MixinElement(:var typeParameters):
146-
case EnumElement(:var typeParameters):
147-
case TypeAliasElement(:var typeParameters):
148-
typeParameterList = typeParameters;
144+
case ClassElement2(:var typeParameters2):
145+
case MixinElement2(:var typeParameters2):
146+
case EnumElement2(:var typeParameters2):
147+
case TypeAliasElement2(:var typeParameters2):
148+
typeParameterList = typeParameters2;
149149
default:
150150
typeParameterList = null;
151151
}
@@ -162,13 +162,15 @@ class _Visitor extends SimpleAstVisitor<void> {
162162
var length = arguments.length;
163163
for (var i = 0; i < length; ++i) {
164164
var parameter = typeParameterList[i];
165-
if (parameter is! TypeParameterElementImpl) continue;
165+
if (parameter is! TypeParameterElementImpl2) continue;
166166
var argument = arguments[i];
167167
Variance parameterVariance;
168-
if (parameter.isLegacyCovariant ||
169-
parameter.variance.isCovariant) {
168+
var parameterFragment = parameter.firstFragment;
169+
if (parameterFragment == null) return;
170+
if (parameterFragment.isLegacyCovariant ||
171+
parameterFragment.variance.isCovariant) {
170172
parameterVariance = variance;
171-
} else if (parameter.variance.isContravariant) {
173+
} else if (parameterFragment.variance.isContravariant) {
172174
parameterVariance = variance.inverse;
173175
} else {
174176
parameterVariance = _inout;

0 commit comments

Comments
 (0)