Skip to content

Commit 70e7715

Browse files
keertipCommit Queue
authored andcommitted
Elements. Migrate lib/src/utilities/completion/optype.dart
Change-Id: I46f1f2e6de31d2583b21c3f96699e85e0b4feab6 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/403840 Commit-Queue: Keerti Parthasarathy <[email protected]> Reviewed-by: Brian Wilkerson <[email protected]>
1 parent 34be38d commit 70e7715

File tree

1 file changed

+32
-35
lines changed
  • pkg/analyzer_plugin/lib/src/utilities/completion

1 file changed

+32
-35
lines changed

pkg/analyzer_plugin/lib/src/utilities/completion/optype.dart

Lines changed: 32 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,13 @@
22
// for details. All rights reserved. Use of this source code is governed by a
33
// BSD-style license that can be found in the LICENSE file.
44

5-
// ignore_for_file: analyzer_use_new_elements
6-
75
import 'package:analyzer/dart/ast/syntactic_entity.dart';
86
import 'package:analyzer/dart/ast/token.dart';
97
import 'package:analyzer/dart/ast/visitor.dart';
10-
import 'package:analyzer/dart/element/element.dart';
8+
import 'package:analyzer/dart/element/element2.dart';
119
import 'package:analyzer/dart/element/type.dart';
1210
import 'package:analyzer/src/dart/ast/ast.dart';
1311
import 'package:analyzer/src/dart/ast/extensions.dart';
14-
import 'package:analyzer/src/dart/element/element.dart';
1512
import 'package:analyzer_plugin/protocol/protocol_common.dart' hide Element;
1613
import 'package:analyzer_plugin/src/utilities/completion/completion_target.dart';
1714
import 'package:analyzer_plugin/src/utilities/extensions/token.dart';
@@ -218,43 +215,43 @@ class _OpTypeAstVisitor extends GeneralizingAstVisitor<void> {
218215
void visitArgumentList(ArgumentList node) {
219216
final entity = this.entity;
220217
var parent = node.parent;
221-
List<ParameterElement>? parameters;
218+
List<FormalParameterElement>? parameters;
222219
if (parent is InstanceCreationExpression) {
223-
Element? constructor;
220+
Element2? constructor;
224221
var name = parent.constructorName.name;
225222
if (name != null) {
226-
constructor = name.staticElement;
223+
constructor = name.element;
227224
} else {
228-
var classElem = parent.constructorName.type.element;
229-
if (classElem is ClassElement) {
230-
constructor = classElem.unnamedConstructor;
225+
var classElem = parent.constructorName.type.element2;
226+
if (classElem is ClassElement2) {
227+
constructor = classElem.unnamedConstructor2;
231228
}
232229
}
233-
if (constructor is ConstructorElement) {
234-
parameters = constructor.parameters;
230+
if (constructor is ConstructorElement2) {
231+
parameters = constructor.formalParameters;
235232
} else if (constructor == null) {
236233
// If unresolved, then include named arguments
237234
optype.includeNamedArgumentSuggestions = true;
238235
}
239236
} else if (parent is InvocationExpression) {
240237
var function = parent.function;
241238
if (function is SimpleIdentifier) {
242-
var elem = function.staticElement;
243-
if (elem is FunctionTypedElement) {
244-
parameters = elem.parameters;
239+
var elem = function.element;
240+
if (elem is FunctionTypedElement2) {
241+
parameters = elem.formalParameters;
245242
} else if (elem == null) {
246243
// If unresolved, then include named arguments
247244
optype.includeNamedArgumentSuggestions = true;
248245
}
249246
}
250247
} else if (parent is SuperConstructorInvocation) {
251-
parameters = parent.staticElement?.parameters;
248+
parameters = parent.element?.formalParameters;
252249
} else if (parent is RedirectingConstructorInvocation) {
253-
parameters = parent.staticElement?.parameters;
250+
parameters = parent.element?.formalParameters;
254251
} else if (parent is Annotation) {
255-
var constructor = parent.element;
256-
if (constructor is ConstructorElement) {
257-
parameters = constructor.parameters;
252+
var constructor = parent.element2;
253+
if (constructor is ConstructorElement2) {
254+
parameters = constructor.formalParameters;
258255
} else if (constructor == null) {
259256
// If unresolved, then include named arguments
260257
optype.includeNamedArgumentSuggestions = true;
@@ -651,7 +648,7 @@ class _OpTypeAstVisitor extends GeneralizingAstVisitor<void> {
651648
} else {
652649
var grandparent = parent.parent;
653650
if (grandparent is ArgumentList) {
654-
var parameter = parent.staticParameterElement;
651+
var parameter = parent.correspondingParameter;
655652
if (parameter != null) {
656653
var parameterType = parameter.type;
657654
if (parameterType is FunctionType &&
@@ -663,7 +660,7 @@ class _OpTypeAstVisitor extends GeneralizingAstVisitor<void> {
663660
}
664661
}
665662
} else if (parent is MethodDeclaration) {
666-
type = parent.declaredElement?.returnType;
663+
type = parent.declaredFragment?.element.returnType;
667664
if (type != null && type is VoidType) {
668665
optype.includeVoidReturnSuggestions = true;
669666
}
@@ -1155,10 +1152,10 @@ class _OpTypeAstVisitor extends GeneralizingAstVisitor<void> {
11551152
optype.completionLocation = 'TypeArgumentList_argument';
11561153
} else {
11571154
var argKind = 'unnamed';
1158-
var method = node.methodName.staticElement;
1159-
if (method is MethodElement &&
1160-
method.parameters.isNotEmpty &&
1161-
method.parameters[0].isNamed) {
1155+
var method = node.methodName.element;
1156+
if (method is MethodElement2 &&
1157+
method.formalParameters.isNotEmpty &&
1158+
method.formalParameters[0].isNamed) {
11621159
argKind = 'named';
11631160
}
11641161
optype.completionLocation = 'ArgumentList_method_$argKind';
@@ -1192,21 +1189,21 @@ class _OpTypeAstVisitor extends GeneralizingAstVisitor<void> {
11921189

11931190
// Check for named parameters in constructor calls.
11941191
var grandparent = node.parent?.parent;
1195-
Element? element;
1192+
Element2? element;
11961193
if (grandparent is ConstructorReferenceNode) {
1197-
element = grandparent.staticElement;
1194+
element = grandparent.element;
11981195
} else if (grandparent is InstanceCreationExpression) {
1199-
element = grandparent.constructorName.staticElement;
1196+
element = grandparent.constructorName.element;
12001197
} else if (grandparent is MethodInvocation) {
1201-
element = grandparent.methodName.staticElement;
1198+
element = grandparent.methodName.element;
12021199
}
1203-
if (element is ExecutableElement) {
1204-
var parameters = element.parameters;
1200+
if (element is ExecutableElement2) {
1201+
var parameters = element.formalParameters;
12051202
var parameterElement = parameters.firstWhereOrNull((e) {
1206-
if (e is DefaultFieldFormalParameterElementImpl) {
1207-
return e.field?.name == node.name.label.name;
1203+
if (e is FieldFormalParameterElement2) {
1204+
return e.field2?.name3 == node.name.label.name;
12081205
}
1209-
return e.isNamed && e.name == node.name.label.name;
1206+
return e.isNamed && e.name3 == node.name.label.name;
12101207
});
12111208
// Suggest tear-offs.
12121209
if (parameterElement?.type is FunctionType) {

0 commit comments

Comments
 (0)