Skip to content

Commit 178de40

Browse files
scheglovCommit Queue
authored andcommitted
Elements. Migrate lib/src/dart/constant/potentially_constant.dart
Change-Id: Ib03cea348b23e1d5693242ede798aa10357a6a5a Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/402884 Commit-Queue: Konstantin Shcheglov <[email protected]> Reviewed-by: Brian Wilkerson <[email protected]>
1 parent 3b7eb26 commit 178de40

File tree

3 files changed

+28
-29
lines changed

3 files changed

+28
-29
lines changed

pkg/analyzer/analyzer_use_new_elements.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ lib/src/dart/ast/extensions.dart
2323
lib/src/dart/ast/utilities.dart
2424
lib/src/dart/constant/constant_verifier.dart
2525
lib/src/dart/constant/evaluation.dart
26-
lib/src/dart/constant/potentially_constant.dart
2726
lib/src/dart/constant/utilities.dart
2827
lib/src/dart/constant/value.dart
2928
lib/src/dart/element/class_hierarchy.dart

pkg/analyzer/lib/src/dart/constant/potentially_constant.dart

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@
55
import 'package:analyzer/dart/analysis/features.dart';
66
import 'package:analyzer/dart/ast/ast.dart';
77
import 'package:analyzer/dart/ast/token.dart';
8-
import 'package:analyzer/dart/element/element.dart';
8+
import 'package:analyzer/dart/element/element2.dart';
99
import 'package:analyzer/dart/element/type.dart';
1010
import 'package:analyzer/src/dart/ast/extensions.dart';
1111
import 'package:analyzer/src/dart/element/type.dart';
1212

13-
/// Some [ConstructorElement]s can be temporary marked as "const" to check
13+
/// Some [ConstructorElement2]s can be temporary marked as "const" to check
1414
/// if doing this is valid.
1515
final temporaryConstConstructorElements = Expando<bool>();
1616

@@ -39,8 +39,8 @@ bool isPotentiallyConstantTypeExpression(TypeAnnotation node) {
3939
}
4040

4141
bool _isConstantTypeName(Identifier name) {
42-
var element = name.staticElement;
43-
if (element is InterfaceElement || element is TypeAliasElement) {
42+
var element = name.element;
43+
if (element is InterfaceElement2 || element is TypeAliasElement2) {
4444
if (name is PrefixedIdentifier) {
4545
if (name.isDeferred) {
4646
return false;
@@ -212,7 +212,7 @@ class _Collector {
212212
}
213213

214214
void _identifier(Identifier node) {
215-
var element = node.staticElement;
215+
var element = node.element;
216216

217217
if (node is PrefixedIdentifier) {
218218
if (node.isDeferred) {
@@ -223,17 +223,17 @@ class _Collector {
223223
collect(node.prefix);
224224
return;
225225
}
226-
if (element is MethodElement && element.isStatic) {
226+
if (element is MethodElement2 && element.isStatic) {
227227
if (!_isConstantTypeName(node.prefix)) {
228228
nodes.add(node);
229229
}
230230
return;
231231
}
232232
}
233233

234-
if (element is ParameterElement) {
235-
var enclosing = element.enclosingElement3;
236-
if (enclosing is ConstructorElement &&
234+
if (element is FormalParameterElement) {
235+
var enclosing = element.enclosingElement2;
236+
if (enclosing is ConstructorElement2 &&
237237
isConstConstructorElement(enclosing)) {
238238
if (node.thisOrAncestorOfType<ConstructorInitializer>() != null) {
239239
return;
@@ -243,14 +243,14 @@ class _Collector {
243243
return;
244244
}
245245

246-
if (element is VariableElement) {
246+
if (element is VariableElement2) {
247247
if (!element.isConst) {
248248
nodes.add(node);
249249
}
250250
return;
251251
}
252-
if (element is PropertyAccessorElement && element.isGetter) {
253-
var variable = element.variable2;
252+
if (element is GetterElement) {
253+
var variable = element.variable3;
254254
if (variable == null) {
255255
return;
256256
}
@@ -262,13 +262,13 @@ class _Collector {
262262
if (_isConstantTypeName(node)) {
263263
return;
264264
}
265-
if (element is FunctionElement) {
265+
if (element is TopLevelFunctionElement) {
266266
return;
267267
}
268-
if (element is MethodElement && element.isStatic) {
268+
if (element is MethodElement2 && element.isStatic) {
269269
return;
270270
}
271-
if (element is TypeParameterElement &&
271+
if (element is TypeParameterElement2 &&
272272
featureSet.isEnabled(Feature.constructor_tearoffs)) {
273273
return;
274274
}
@@ -278,8 +278,8 @@ class _Collector {
278278
void _methodInvocation(MethodInvocation node) {
279279
var arguments = node.argumentList.arguments;
280280
if (arguments.length == 2) {
281-
var element = node.methodName.staticElement;
282-
if (element is FunctionElement && element.isDartCoreIdentical) {
281+
var element = node.methodName.element;
282+
if (element is TopLevelFunctionElement && element.isDartCoreIdentical) {
283283
collect(arguments[0]);
284284
collect(arguments[1]);
285285
return;
@@ -304,9 +304,9 @@ class _Collector {
304304
return;
305305
}
306306

307-
var element = node.propertyName.staticElement;
308-
if (element is PropertyAccessorElement && element.isGetter) {
309-
var variable = element.variable2;
307+
var element = node.propertyName.element;
308+
if (element is GetterElement) {
309+
var variable = element.variable3;
310310
if (variable == null) {
311311
return;
312312
}
@@ -384,7 +384,7 @@ class _Collector {
384384
}
385385
}
386386

387-
static bool isConstConstructorElement(ConstructorElement element) {
387+
static bool isConstConstructorElement(ConstructorElement2 element) {
388388
if (element.isConst) return true;
389389
return temporaryConstConstructorElements[element] ?? false;
390390
}
@@ -402,7 +402,7 @@ class _ConstantTypeChecker {
402402
}
403403
if (potentially &&
404404
node is NamedType &&
405-
node.element is TypeParameterElement) {
405+
node.element2 is TypeParameterElement2) {
406406
return true;
407407
}
408408

@@ -467,8 +467,8 @@ class _ConstantTypeChecker {
467467

468468
extension on NamedType {
469469
bool get isConstantNamedType {
470-
var element = this.element;
471-
if (element is InterfaceElement || element is TypeAliasElement) {
470+
var element2 = this.element2;
471+
if (element2 is InterfaceElement2 || element2 is TypeAliasElement2) {
472472
return !isDeferred;
473473
}
474474
return false;

pkg/analyzer/lib/src/lint/constants.dart

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

55
import 'package:analyzer/dart/ast/token.dart';
66
import 'package:analyzer/dart/constant/value.dart';
7-
import 'package:analyzer/dart/element/element.dart';
7+
import 'package:analyzer/dart/element/element2.dart';
88
import 'package:analyzer/error/error.dart';
99
import 'package:analyzer/error/listener.dart';
1010
import 'package:analyzer/src/dart/ast/ast.dart';
@@ -117,10 +117,10 @@ extension on AstNode {
117117

118118
extension ConstructorDeclarationExtension on ConstructorDeclaration {
119119
bool get canBeConst {
120-
var element = declaredElement!;
120+
var element = declaredFragment!.element;
121121

122-
var classElement = element.enclosingElement3;
123-
if (classElement is ClassElement && classElement.hasNonFinalField) {
122+
var classElement = element.enclosingElement2;
123+
if (classElement is ClassElement2 && classElement.hasNonFinalField) {
124124
return false;
125125
}
126126

0 commit comments

Comments
 (0)