Skip to content

Commit 5af6310

Browse files
scheglovCommit Queue
authored andcommitted
Elements. Use named formal parameters for FragmentImpl constructors.
Change-Id: Iad91dbb30563803e4330e24169e930223c99c2b5 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/431660 Reviewed-by: Paul Berry <[email protected]> Commit-Queue: Konstantin Shcheglov <[email protected]>
1 parent cde11c1 commit 5af6310

File tree

16 files changed

+272
-170
lines changed

16 files changed

+272
-170
lines changed

pkg/analyzer/lib/src/dart/element/display_string_builder.dart

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -641,7 +641,10 @@ class ElementDisplayStringBuilder {
641641
name = typeParameter.name3! + subscript;
642642
}
643643

644-
var newTypeParameter = TypeParameterFragmentImpl(name, -1);
644+
var newTypeParameter = TypeParameterFragmentImpl(
645+
name: name,
646+
nameOffset: -1,
647+
);
645648
newTypeParameter.name2 = name;
646649
newTypeParameter.bound = typeParameter.bound;
647650
newTypeParameters.add(newTypeParameter.asElement2);

pkg/analyzer/lib/src/dart/element/element.dart

Lines changed: 108 additions & 54 deletions
Large diffs are not rendered by default.

pkg/analyzer/lib/src/dart/element/inheritance_manager3.dart

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1126,7 +1126,7 @@ class InheritanceManager3 {
11261126
}
11271127

11281128
if (executable is MethodElementOrMember) {
1129-
var result = MethodFragmentImpl(executable.name, -1);
1129+
var result = MethodFragmentImpl(name: executable.name, nameOffset: -1);
11301130
result.enclosingElement3 = class_;
11311131
result.isSynthetic = true;
11321132
result.parameters = transformedParameters;
@@ -1136,14 +1136,14 @@ class InheritanceManager3 {
11361136
}
11371137

11381138
if (executable is SetterFragmentImpl) {
1139-
var result = SetterFragmentImpl(executable.name, -1);
1139+
var result = SetterFragmentImpl(name: executable.name, nameOffset: -1);
11401140
result.enclosingElement3 = class_;
11411141
result.isSynthetic = true;
11421142
result.parameters = transformedParameters;
11431143
result.returnType = executable.returnType;
11441144

11451145
var field = executable.variable2!;
1146-
var resultField = FieldFragmentImpl(field.name, -1);
1146+
var resultField = FieldFragmentImpl(name: field.name, nameOffset: -1);
11471147
resultField.enclosingElement3 = class_;
11481148
resultField.getter = field.getter;
11491149
resultField.setter = executable;
@@ -1199,7 +1199,7 @@ class InheritanceManager3 {
11991199
if (first is MethodElementOrMember) {
12001200
var firstMethod = first;
12011201
var fragmentName = first.asElement2.firstFragment.name2;
1202-
var result = MethodFragmentImpl(firstMethod.name, -1);
1202+
var result = MethodFragmentImpl(name: firstMethod.name, nameOffset: -1);
12031203
result.enclosingElement3 = targetClass;
12041204
result.name2 = fragmentName;
12051205
result.typeParameters = resultType.typeFormals;
@@ -1214,13 +1214,15 @@ class InheritanceManager3 {
12141214
var firstAccessor = first as PropertyAccessorElementOrMember;
12151215
var fragmentName = first.asElement2.firstFragment.name2;
12161216
var variableName = firstAccessor.displayName;
1217-
var field = FieldFragmentImpl(variableName, -1);
1217+
var field = FieldFragmentImpl(name: variableName, nameOffset: -1);
12181218

12191219
PropertyAccessorFragmentImpl result;
12201220
if (firstAccessor.isGetter) {
1221-
field.getter = result = GetterFragmentImpl(variableName, -1);
1221+
field.getter =
1222+
result = GetterFragmentImpl(name: variableName, nameOffset: -1);
12221223
} else {
1223-
field.setter = result = SetterFragmentImpl(variableName, -1);
1224+
field.setter =
1225+
result = SetterFragmentImpl(name: variableName, nameOffset: -1);
12241226
}
12251227
result.enclosingElement3 = targetClass;
12261228
result.name2 = fragmentName;

pkg/analyzer/lib/src/dart/element/member.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1467,7 +1467,7 @@ class _SubstitutedTypeParameters {
14671467
var newTypes = <TypeParameterType>[];
14681468
for (int i = 0; i < elements.length; i++) {
14691469
var element = elements[i];
1470-
var newElement = TypeParameterFragmentImpl.synthetic(element.name);
1470+
var newElement = TypeParameterFragmentImpl.synthetic(name: element.name);
14711471
newElements.add(newElement);
14721472
newTypes.add(
14731473
newElement.instantiate(nullabilitySuffix: NullabilitySuffix.none),

pkg/analyzer/lib/src/dart/element/type.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -412,7 +412,7 @@ class FunctionTypeImpl extends TypeImpl
412412
return instantiate([
413413
for (var i = 0; i < typeFormals.length; i++)
414414
TypeParameterTypeImpl(
415-
element3: TypeParameterFragmentImpl.synthetic('T$i').element,
415+
element3: TypeParameterFragmentImpl.synthetic(name: 'T$i').element,
416416
nullabilitySuffix: NullabilitySuffix.none,
417417
),
418418
]).hashCode;
@@ -466,7 +466,7 @@ class FunctionTypeImpl extends TypeImpl
466466
TypeParameterElement p1 = params1[i];
467467
TypeParameterElement p2 = params2[i];
468468
TypeParameterFragmentImpl pFresh = TypeParameterFragmentImpl.synthetic(
469-
p2.name3!,
469+
name: p2.name3!,
470470
);
471471

472472
TypeParameterTypeImpl variableFresh = pFresh.instantiate(

pkg/analyzer/lib/src/dart/element/type_algebra.dart

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -259,7 +259,10 @@ class _FreshTypeParametersSubstitutor extends _TypeSubstitutor {
259259

260260
var freshElements = List.generate(elements.length, (index) {
261261
var element = elements[index];
262-
var freshElement = TypeParameterFragmentImpl(element.name3!, -1);
262+
var freshElement = TypeParameterFragmentImpl(
263+
name: element.name3!,
264+
nameOffset: -1,
265+
);
263266
var freshType = freshElement.instantiate(
264267
nullabilitySuffix: NullabilitySuffix.none,
265268
);

pkg/analyzer/lib/src/dart/element/type_constraint_gatherer.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,7 @@ class TypeConstraintGatherer
275275
// not contain any variables from `L`.
276276
var newTypeParameters = <TypeParameterElementImpl2>[];
277277
for (var i = 0; i < P.typeFormals.length; i++) {
278-
var Z = TypeParameterFragmentImpl('Z$i', -1);
278+
var Z = TypeParameterFragmentImpl(name: 'Z$i', nameOffset: -1);
279279
if (leftSchema) {
280280
Z.bound = P.typeFormals[i].bound;
281281
} else {

pkg/analyzer/lib/src/dart/resolver/resolution_visitor.dart

Lines changed: 26 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -233,8 +233,8 @@ class ResolutionVisitor extends RecursiveAstVisitor<void> {
233233
var exceptionNode = node.exceptionParameter;
234234
if (exceptionNode != null) {
235235
var fragment = LocalVariableFragmentImpl(
236-
exceptionNode.name.lexeme,
237-
exceptionNode.name.offset,
236+
name: exceptionNode.name.lexeme,
237+
nameOffset: exceptionNode.name.offset,
238238
);
239239
_elementHolder.enclose(fragment);
240240
_define(fragment.element);
@@ -258,8 +258,8 @@ class ResolutionVisitor extends RecursiveAstVisitor<void> {
258258
var stackTraceNode = node.stackTraceParameter;
259259
if (stackTraceNode != null) {
260260
var fragment = LocalVariableFragmentImpl(
261-
stackTraceNode.name.lexeme,
262-
stackTraceNode.name.offset,
261+
name: stackTraceNode.name.lexeme,
262+
nameOffset: stackTraceNode.name.offset,
263263
);
264264
_elementHolder.enclose(fragment);
265265
_define(fragment.element);
@@ -380,8 +380,8 @@ class ResolutionVisitor extends RecursiveAstVisitor<void> {
380380
void visitDeclaredIdentifier(covariant DeclaredIdentifierImpl node) {
381381
var nameToken = node.name;
382382
var fragment = LocalVariableFragmentImpl(
383-
nameToken.lexeme,
384-
nameToken.offset,
383+
name: nameToken.lexeme,
384+
nameOffset: nameToken.offset,
385385
);
386386
_elementHolder.enclose(fragment);
387387
node.declaredFragment = fragment;
@@ -410,9 +410,9 @@ class ResolutionVisitor extends RecursiveAstVisitor<void> {
410410

411411
var name = node.name.lexeme;
412412
var fragment = BindPatternVariableFragmentImpl(
413-
node,
414-
name,
415-
node.name.offset,
413+
node: node,
414+
name: name,
415+
nameOffset: node.name.offset,
416416
);
417417
_patternVariables.add(name, fragment.element);
418418
_elementHolder.enclose(fragment);
@@ -1477,9 +1477,9 @@ class ResolutionVisitor extends RecursiveAstVisitor<void> {
14771477
label as LabelImpl;
14781478
var labelName = label.label;
14791479
var element = LabelFragmentImpl(
1480-
labelName.name,
1481-
labelName.offset,
1482-
onSwitchMember,
1480+
name: labelName.name,
1481+
nameOffset: labelName.offset,
1482+
onSwitchMember: onSwitchMember,
14831483
);
14841484
labelName.element = element.asElement2;
14851485
_elementHolder.enclose(element);
@@ -1503,8 +1503,8 @@ class ResolutionVisitor extends RecursiveAstVisitor<void> {
15031503
var nameToken = node.name;
15041504

15051505
var fragment = LocalFunctionFragmentImpl(
1506-
nameToken.lexeme,
1507-
nameToken.offset,
1506+
name: nameToken.lexeme,
1507+
nameOffset: nameToken.offset,
15081508
);
15091509
fragment.name2 = nameToken.nameIfNotEmpty;
15101510
fragment.nameOffset2 = nameToken.offsetIfNotEmpty;
@@ -1531,13 +1531,13 @@ class ResolutionVisitor extends RecursiveAstVisitor<void> {
15311531
LocalVariableFragmentImpl fragment;
15321532
if (isConst && variable.initializer != null) {
15331533
fragment = ConstLocalVariableFragmentImpl(
1534-
nameToken.lexeme,
1535-
nameToken.offset,
1534+
name: nameToken.lexeme,
1535+
nameOffset: nameToken.offset,
15361536
);
15371537
} else {
15381538
fragment = LocalVariableFragmentImpl(
1539-
nameToken.lexeme,
1540-
nameToken.offset,
1539+
name: nameToken.lexeme,
1540+
nameOffset: nameToken.offset,
15411541
);
15421542
}
15431543
variable.declaredFragment = fragment;
@@ -1564,7 +1564,10 @@ class ResolutionVisitor extends RecursiveAstVisitor<void> {
15641564
if (_elementWalker != null) {
15651565
fragment = _elementWalker!.getTypeParameter();
15661566
} else {
1567-
fragment = TypeParameterFragmentImpl(name.lexeme, name.offset);
1567+
fragment = TypeParameterFragmentImpl(
1568+
name: name.lexeme,
1569+
nameOffset: name.offset,
1570+
);
15681571
fragment.name2 = name.lexeme;
15691572
fragment.nameOffset2 = name.offset;
15701573
_elementHolder.addTypeParameter(fragment);
@@ -1989,10 +1992,10 @@ class _VariableBinder
19891992
}
19901993

19911994
var resultFragment = JoinPatternVariableFragmentImpl(
1992-
first.name3!,
1993-
-1,
1994-
expandedVariables.map((e) => e.asElement).toList(),
1995-
inconsistency.maxWithAll(
1995+
name: first.name3!,
1996+
nameOffset: -1,
1997+
variables: expandedVariables.map((e) => e.asElement).toList(),
1998+
inconsistency: inconsistency.maxWithAll(
19961999
components.whereType<JoinPatternVariableElementImpl2>().map(
19972000
(e) => e.inconsistency,
19982001
),

pkg/analyzer/lib/src/summary2/bundle_reader.dart

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -688,7 +688,7 @@ class LibraryReader {
688688
var fragmentName = _readFragmentName();
689689
var name = fragmentName ?? '';
690690

691-
var fragment = ClassFragmentImpl(name, -1);
691+
var fragment = ClassFragmentImpl(name: name, nameOffset: -1);
692692
fragment.name2 = fragmentName;
693693

694694
if (reference2.element2 case ClassElementImpl2 element?) {
@@ -763,7 +763,7 @@ class LibraryReader {
763763
var resolutionOffset = _baseResolutionOffset + _reader.readUInt30();
764764
var reference = _readReference();
765765
var name = reference.elementName.ifEqualThen('new', '');
766-
var element = ConstructorFragmentImpl(name, -1);
766+
var element = ConstructorFragmentImpl(name: name, nameOffset: -1);
767767
element.typeName = _reader.readOptionalStringReference();
768768
element.name2 = _reader.readStringReference();
769769
var linkedData = ConstructorElementLinkedData(
@@ -862,7 +862,7 @@ class LibraryReader {
862862
var fragmentName = _readFragmentName();
863863
var name = fragmentName ?? '';
864864

865-
var fragment = EnumFragmentImpl(name, -1);
865+
var fragment = EnumFragmentImpl(name: name, nameOffset: -1);
866866
fragment.name2 = fragmentName;
867867

868868
if (reference2.element2 case EnumElementImpl2 element?) {
@@ -951,7 +951,7 @@ class LibraryReader {
951951
var fragmentName = _readFragmentName();
952952
var name = fragmentName;
953953

954-
var fragment = ExtensionFragmentImpl(name, -1);
954+
var fragment = ExtensionFragmentImpl(name: name, nameOffset: -1);
955955
fragment.name2 = fragmentName;
956956

957957
if (reference2.element2 case ExtensionElementImpl2 element?) {
@@ -1017,7 +1017,7 @@ class LibraryReader {
10171017
var fragmentName = _readFragmentName();
10181018
var name = fragmentName ?? '';
10191019

1020-
var fragment = ExtensionTypeFragmentImpl(name, -1);
1020+
var fragment = ExtensionTypeFragmentImpl(name: name, nameOffset: -1);
10211021
fragment.name2 = fragmentName;
10221022

10231023
if (reference2.element2 case ExtensionTypeElementImpl2 element?) {
@@ -1095,9 +1095,9 @@ class LibraryReader {
10951095

10961096
FieldFragmentImpl element;
10971097
if (isConstElement) {
1098-
element = ConstFieldFragmentImpl(name, -1);
1098+
element = ConstFieldFragmentImpl(name: name, nameOffset: -1);
10991099
} else {
1100-
element = FieldFragmentImpl(name, -1);
1100+
element = FieldFragmentImpl(name: name, nameOffset: -1);
11011101
}
11021102
element.name2 = fragmentName;
11031103

@@ -1168,7 +1168,7 @@ class LibraryReader {
11681168
var fragmentName = _readFragmentName();
11691169
var name = reference.elementName;
11701170

1171-
var fragment = TopLevelFunctionFragmentImpl(name, -1);
1171+
var fragment = TopLevelFunctionFragmentImpl(name: name, nameOffset: -1);
11721172
fragment.name2 = fragmentName;
11731173

11741174
if (reference2.element2 case TopLevelFunctionElementImpl element?) {
@@ -1272,7 +1272,7 @@ class LibraryReader {
12721272
var fragmentName = _readFragmentName();
12731273
// TODO(scheglov): we do this only because MethodElement2 uses this name.
12741274
var name = _reader.readStringReference();
1275-
var fragment = MethodFragmentImpl(name, -1);
1275+
var fragment = MethodFragmentImpl(name: name, nameOffset: -1);
12761276
fragment.name2 = fragmentName;
12771277

12781278
var linkedData = MethodElementLinkedData(
@@ -1302,7 +1302,7 @@ class LibraryReader {
13021302
var fragmentName = _readFragmentName();
13031303
var name = fragmentName ?? '';
13041304

1305-
var fragment = MixinFragmentImpl(name, -1);
1305+
var fragment = MixinFragmentImpl(name: name, nameOffset: -1);
13061306
fragment.name2 = fragmentName;
13071307

13081308
if (reference2.element2 case MixinElementImpl2 element?) {
@@ -1474,8 +1474,8 @@ class LibraryReader {
14741474

14751475
var fragment =
14761476
PropertyAccessorElementFlags.isGetter(flags)
1477-
? GetterFragmentImpl(name, -1)
1478-
: SetterFragmentImpl(name, -1);
1477+
? GetterFragmentImpl(name: name, nameOffset: -1)
1478+
: SetterFragmentImpl(name: name, nameOffset: -1);
14791479
fragment.name2 = fragmentName;
14801480

14811481
var linkedData = PropertyAccessorElementLinkedData(
@@ -1539,7 +1539,7 @@ class LibraryReader {
15391539
propertyFragment = existing;
15401540
} else {
15411541
var variableFragment =
1542-
TopLevelVariableFragmentImpl(name, -1)
1542+
TopLevelVariableFragmentImpl(name: name, nameOffset: -1)
15431543
..enclosingElement3 = enclosingElement
15441544
..reference = propertyFragmentReference
15451545
..isSynthetic = true
@@ -1562,7 +1562,7 @@ class LibraryReader {
15621562
propertyFragment = existing;
15631563
} else {
15641564
propertyFragment =
1565-
FieldFragmentImpl(name, -1)
1565+
FieldFragmentImpl(name: name, nameOffset: -1)
15661566
..enclosingElement3 = enclosingElement
15671567
..reference = propertyFragmentReference
15681568
..name2 = accessor.name2
@@ -1625,9 +1625,9 @@ class LibraryReader {
16251625

16261626
TopLevelVariableFragmentImpl fragment;
16271627
if (isConst) {
1628-
fragment = ConstTopLevelVariableFragmentImpl(name, -1);
1628+
fragment = ConstTopLevelVariableFragmentImpl(name: name, nameOffset: -1);
16291629
} else {
1630-
fragment = TopLevelVariableFragmentImpl(name, -1);
1630+
fragment = TopLevelVariableFragmentImpl(name: name, nameOffset: -1);
16311631
}
16321632
fragment.name2 = fragmentName;
16331633

@@ -1700,10 +1700,10 @@ class LibraryReader {
17001700

17011701
TypeAliasFragmentImpl fragment;
17021702
if (isFunctionTypeAliasBased) {
1703-
fragment = TypeAliasFragmentImpl(name, -1);
1703+
fragment = TypeAliasFragmentImpl(name: name, nameOffset: -1);
17041704
fragment.isFunctionTypeAliasBased = true;
17051705
} else {
1706-
fragment = TypeAliasFragmentImpl(name, -1);
1706+
fragment = TypeAliasFragmentImpl(name: name, nameOffset: -1);
17071707
}
17081708
fragment.name2 = fragmentName;
17091709

@@ -1745,7 +1745,7 @@ class LibraryReader {
17451745
var fragmentName = _readFragmentName();
17461746
var varianceEncoding = _reader.readByte();
17471747
var variance = _decodeVariance(varianceEncoding);
1748-
var element = TypeParameterFragmentImpl(name, -1);
1748+
var element = TypeParameterFragmentImpl(name: name, nameOffset: -1);
17491749
element.name2 = fragmentName;
17501750
element.variance = variance;
17511751
return element;
@@ -2402,7 +2402,7 @@ class ResolutionReader {
24022402
) {
24032403
var typeParameters = readTypedList(() {
24042404
var name = readStringReference();
2405-
var typeParameter = TypeParameterFragmentImpl(name, -1);
2405+
var typeParameter = TypeParameterFragmentImpl(name: name, nameOffset: -1);
24062406
_localElements.add(typeParameter);
24072407
return typeParameter;
24082408
});

0 commit comments

Comments
 (0)