Elements. Deprecate InterfaceElement.constructors2, use constructors.
Change-Id: I78faea1fdbc55e46cdb7fc0b187d12561736cec2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/429822
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
diff --git a/pkg/analysis_server/lib/src/cider/local_library_contributor.dart b/pkg/analysis_server/lib/src/cider/local_library_contributor.dart
index 00b9f86..c209484 100644
--- a/pkg/analysis_server/lib/src/cider/local_library_contributor.dart
+++ b/pkg/analysis_server/lib/src/cider/local_library_contributor.dart
@@ -193,7 +193,7 @@
return;
}
- for (var constructor in element.constructors2) {
+ for (var constructor in element.constructors) {
if (constructor.isPrivate) {
continue;
}
diff --git a/pkg/analysis_server/lib/src/services/completion/dart/declaration_helper.dart b/pkg/analysis_server/lib/src/services/completion/dart/declaration_helper.dart
index 0f98a10..1e149ab 100644
--- a/pkg/analysis_server/lib/src/services/completion/dart/declaration_helper.dart
+++ b/pkg/analysis_server/lib/src/services/completion/dart/declaration_helper.dart
@@ -162,7 +162,7 @@
/// Add suggestions for all constructors of [element].
void addConstructorNamesForElement({required InterfaceElement element}) {
- var constructors = element.constructors2;
+ var constructors = element.constructors;
for (var constructor in constructors) {
_suggestConstructor(
constructor,
@@ -610,7 +610,7 @@
var typeSystem = library.typeSystem;
for (var classElement in library.classes) {
if (typeSystem.isSubtypeOf(classElement.thisType, classType)) {
- for (var constructor in classElement.constructors2) {
+ for (var constructor in classElement.constructors) {
if (constructor != redirectingConstructor &&
constructor.isAccessibleIn2(library)) {
_suggestConstructor(
@@ -638,7 +638,7 @@
_addStaticMembers(
getters: element.getters,
setters: element.setters,
- constructors: element.constructors2,
+ constructors: element.constructors,
containingElement: element,
fields: element.fields,
methods: element.methods,
@@ -656,7 +656,7 @@
_addStaticMembers(
getters: element.getters,
setters: element.setters,
- constructors: element.constructors2,
+ constructors: element.constructors,
containingElement: element,
fields: element.fields,
methods: element.methods,
@@ -669,16 +669,16 @@
void _addConstructors(LibraryElement library, ImportData importData) {
for (var element in library.classes) {
_suggestConstructors(
- element.constructors2,
+ element.constructors,
importData,
allowNonFactory: !element.isAbstract,
);
}
for (var element in library.enums) {
- _suggestConstructors(element.constructors2, importData);
+ _suggestConstructors(element.constructors, importData);
}
for (var element in library.extensionTypes) {
- _suggestConstructors(element.constructors2, importData);
+ _suggestConstructors(element.constructors, importData);
}
for (var element in library.typeAliases) {
_addConstructorsForAliasedElement(element, importData);
@@ -694,14 +694,14 @@
var aliasedElement = alias.aliasedElement2;
if (aliasedElement is ClassElement) {
_suggestConstructors(
- aliasedElement.constructors2,
+ aliasedElement.constructors,
importData,
allowNonFactory: !aliasedElement.isAbstract,
);
} else if (aliasedElement is ExtensionTypeElement) {
- _suggestConstructors(aliasedElement.constructors2, importData);
+ _suggestConstructors(aliasedElement.constructors, importData);
} else if (aliasedElement is MixinElement) {
- _suggestConstructors(aliasedElement.constructors2, importData);
+ _suggestConstructors(aliasedElement.constructors, importData);
}
}
@@ -721,12 +721,12 @@
switch (element) {
case ClassElement():
_suggestConstructors(
- element.constructors2,
+ element.constructors,
importData,
allowNonFactory: !element.isAbstract,
);
case ExtensionTypeElement():
- _suggestConstructors(element.constructors2, importData);
+ _suggestConstructors(element.constructors, importData);
case TypeAliasElement():
_addConstructorsForAliasedElement(element, importData);
}
@@ -1694,7 +1694,7 @@
if (!mustBeType) {
_suggestStaticFields(element.fields, importData);
_suggestConstructors(
- element.constructors2,
+ element.constructors,
importData,
allowNonFactory: !element.isAbstract,
);
@@ -1799,7 +1799,7 @@
if (!mustBeType) {
_suggestStaticFields(element.fields, importData);
_suggestConstructors(
- element.constructors2,
+ element.constructors,
importData,
allowNonFactory: false,
);
@@ -1852,7 +1852,7 @@
}
if (!mustBeType) {
_suggestStaticFields(element.fields, importData);
- _suggestConstructors(element.constructors2, importData);
+ _suggestConstructors(element.constructors, importData);
}
}
}
diff --git a/pkg/analysis_server/lib/src/services/flutter/property.dart b/pkg/analysis_server/lib/src/services/flutter/property.dart
index 882052a..1f5046a 100644
--- a/pkg/analysis_server/lib/src/services/flutter/property.dart
+++ b/pkg/analysis_server/lib/src/services/flutter/property.dart
@@ -486,7 +486,7 @@
}
}
- onlyConstructor = classEdgeInsets.constructors2.firstWhereOrNull(
+ onlyConstructor = classEdgeInsets.constructors.firstWhereOrNull(
(e) => e.name3 == 'only',
);
diff --git a/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_class_member.dart b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_class_member.dart
index ccbd20a..3371473 100644
--- a/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_class_member.dart
+++ b/pkg/analysis_server/lib/src/services/refactoring/legacy/rename_class_member.dart
@@ -106,7 +106,7 @@
if (!newName.startsWith('_')) {
var interfaceElement = renameElement.enclosingElement;
if (interfaceElement is InterfaceElement) {
- for (var constructor in interfaceElement.constructors2) {
+ for (var constructor in interfaceElement.constructors) {
for (var parameter in constructor.formalParameters) {
if (parameter is FieldFormalParameterElement &&
parameter.field2 == renameElement) {
diff --git a/pkg/analysis_server/lib/src/services/search/hierarchy.dart b/pkg/analysis_server/lib/src/services/search/hierarchy.dart
index 03bd4bd..0266288 100644
--- a/pkg/analysis_server/lib/src/services/search/hierarchy.dart
+++ b/pkg/analysis_server/lib/src/services/search/hierarchy.dart
@@ -171,7 +171,7 @@
}
if (includeParametersForFields && member2 is FieldElement) {
- for (var constructor in subClass.constructors2) {
+ for (var constructor in subClass.constructors) {
for (var parameter in constructor.formalParameters) {
if (parameter is FieldFormalParameterElement &&
parameter.field2 == member2) {
diff --git a/pkg/analysis_server/test/services/search/hierarchy_test.dart b/pkg/analysis_server/test/services/search/hierarchy_test.dart
index ec1b1ab..d3f23a9 100644
--- a/pkg/analysis_server/test/services/search/hierarchy_test.dart
+++ b/pkg/analysis_server/test/services/search/hierarchy_test.dart
@@ -38,8 +38,8 @@
''');
var classA = findElement2.class_('A');
var classB = findElement2.class_('B');
- var memberA = classA.constructors2[0];
- var memberB = classB.constructors2[0];
+ var memberA = classA.constructors[0];
+ var memberB = classB.constructors[0];
var futureA = getHierarchyMembers(searchEngine, memberA).then((members) {
expect(members, unorderedEquals([memberA]));
});
diff --git a/pkg/analyzer/CHANGELOG.md b/pkg/analyzer/CHANGELOG.md
index dc56bd2..ce8c6d3 100644
--- a/pkg/analyzer/CHANGELOG.md
+++ b/pkg/analyzer/CHANGELOG.md
@@ -29,6 +29,8 @@
* Deprecate `InstanceElement.getMethod2`, use `getMethod` instead.
* Deprecate `InstanceFragment.fields2`, use `fields` instead.
* Deprecate `InstanceFragment.methods2`, use `methods` instead.
+* Deprecate `InterfaceElement.constructors2`, use `constructors` instead.
+* Deprecate `InterfaceFragment.constructors2`, use `constructors` instead.
## 7.4.1
* Restore `InstanceElement.augmented` getter.
diff --git a/pkg/analyzer/api.txt b/pkg/analyzer/api.txt
index 88cf523..eb78962 100644
--- a/pkg/analyzer/api.txt
+++ b/pkg/analyzer/api.txt
@@ -3405,7 +3405,8 @@
InterfaceElement (class extends Object implements InstanceElement):
new (constructor: InterfaceElement Function())
allSupertypes (getter: List<InterfaceType>)
- constructors2 (getter: List<ConstructorElement>)
+ constructors (getter: List<ConstructorElement>)
+ constructors2 (getter: List<ConstructorElement>, deprecated)
firstFragment (getter: InterfaceFragment)
fragments (getter: List<InterfaceFragment>)
inheritedConcreteMembers (getter: Map<Name, ExecutableElement>)
@@ -3426,7 +3427,8 @@
lookUpInheritedMethod2 (method: MethodElement? Function({required LibraryElement library, required String methodName}))
InterfaceFragment (class extends Object implements InstanceFragment):
new (constructor: InterfaceFragment Function())
- constructors2 (getter: List<ConstructorFragment>)
+ constructors (getter: List<ConstructorFragment>)
+ constructors2 (getter: List<ConstructorFragment>, deprecated)
element (getter: InterfaceElement)
interfaces (getter: List<InterfaceType>)
mixins (getter: List<InterfaceType>)
diff --git a/pkg/analyzer/doc/tutorial/element.md b/pkg/analyzer/doc/tutorial/element.md
index eeb9157..f6b4747 100644
--- a/pkg/analyzer/doc/tutorial/element.md
+++ b/pkg/analyzer/doc/tutorial/element.md
@@ -73,7 +73,7 @@
void printMembers(LibraryElement libraryElement) {
for (ClassElement classElement in libraryElement.classes) {
print(classElement.name3);
- for (ConstructorElement constructorElement in classElement.constructors2) {
+ for (ConstructorElement constructorElement in classElement.constructors) {
if (!constructorElement.isSynthetic) {
print(' ${constructorElement.displayName}');
}
diff --git a/pkg/analyzer/lib/dart/element/element.dart b/pkg/analyzer/lib/dart/element/element.dart
index e3dd6a4..c1614eb 100644
--- a/pkg/analyzer/lib/dart/element/element.dart
+++ b/pkg/analyzer/lib/dart/element/element.dart
@@ -1986,6 +1986,12 @@
/// The constructors defined for this element.
///
/// The list is empty for [MixinElement].
+ List<ConstructorElement> get constructors;
+
+ /// The constructors defined for this element.
+ ///
+ /// The list is empty for [MixinElement].
+ @Deprecated('Use constructors instead')
List<ConstructorElement> get constructors2;
@override
@@ -2123,7 +2129,7 @@
/// since it does not need to consider all possible interface names.
ExecutableElement? getInterfaceMember(Name name);
- /// Returns the constructor from [constructors2] that has the given [name].
+ /// Returns the constructor from [constructors] that has the given [name].
ConstructorElement? getNamedConstructor2(String name);
/// Returns all members of mixins, superclasses, and interfaces that a member
@@ -2202,6 +2208,12 @@
/// The constructors declared in this fragment.
///
/// The list is empty for [MixinFragment].
+ List<ConstructorFragment> get constructors;
+
+ /// The constructors declared in this fragment.
+ ///
+ /// The list is empty for [MixinFragment].
+ @Deprecated('Use constructors instead')
List<ConstructorFragment> get constructors2;
@override
diff --git a/pkg/analyzer/lib/src/dart/analysis/index.dart b/pkg/analyzer/lib/src/dart/analysis/index.dart
index 9d6ab72..7a22d00 100644
--- a/pkg/analyzer/lib/src/dart/analysis/index.dart
+++ b/pkg/analyzer/lib/src/dart/analysis/index.dart
@@ -733,7 +733,7 @@
// If the class has only a synthetic default constructor, then it
// implicitly invokes the default super constructor. Associate the
// invocation with the name of the class.
- var defaultConstructor = declaredElement.constructors2.singleOrNull;
+ var defaultConstructor = declaredElement.constructors.singleOrNull;
if (defaultConstructor is ConstructorElementImpl2 &&
defaultConstructor.isSynthetic) {
defaultConstructor.isDefaultConstructor;
diff --git a/pkg/analyzer/lib/src/dart/analysis/search.dart b/pkg/analyzer/lib/src/dart/analysis/search.dart
index 9912540..370afb5 100644
--- a/pkg/analyzer/lib/src/dart/analysis/search.dart
+++ b/pkg/analyzer/lib/src/dart/analysis/search.dart
@@ -1288,7 +1288,7 @@
var element = elements[i];
_addDeclaration(element, element.name3!);
_addGetters(element.getters);
- _addConstructors(element.constructors2);
+ _addConstructors(element.constructors);
_addFields(element.fields);
_addMethods(element.methods);
_addSetters(element.setters);
diff --git a/pkg/analyzer/lib/src/dart/element/element.dart b/pkg/analyzer/lib/src/dart/element/element.dart
index e7c36ab..71e0d40 100644
--- a/pkg/analyzer/lib/src/dart/element/element.dart
+++ b/pkg/analyzer/lib/src/dart/element/element.dart
@@ -296,7 +296,7 @@
}
// With only private non-factory constructors.
- for (var constructor in constructors2) {
+ for (var constructor in constructors) {
if (constructor.isPublic || constructor.isFactory) {
return false;
}
@@ -4967,17 +4967,23 @@
@override
List<Element> get children2 {
- return [...super.children2, ...constructors2];
+ return [...super.children2, ...constructors];
}
@override
- List<ConstructorElementImpl2> get constructors2 {
+ List<ConstructorElementImpl2> get constructors {
_readMembers();
return firstFragment.constructors
.map((constructor) => constructor.element)
.toList();
}
+ @Deprecated('Use constructors instead')
+ @override
+ List<ConstructorElementImpl2> get constructors2 {
+ return constructors;
+ }
+
@override
InterfaceFragmentImpl get firstFragment;
@@ -5081,7 +5087,7 @@
element: this,
name: name,
);
- return constructors2.firstWhereOrNull((e) => e.name3 == name);
+ return constructors.firstWhereOrNull((e) => e.name3 == name);
}
@override
@@ -5302,6 +5308,7 @@
...typeParameters,
];
+ @override
List<ConstructorFragmentImpl> get constructors {
if (!identical(_constructors, _Sentinel.constructorElement)) {
return _constructors;
@@ -5319,9 +5326,11 @@
_constructors = constructors;
}
+ @Deprecated('Use constructors instead')
@override
- List<ConstructorFragment> get constructors2 =>
- constructors.cast<ConstructorFragment>();
+ List<ConstructorFragmentImpl> get constructors2 {
+ return constructors;
+ }
@override
String get displayName => name;
diff --git a/pkg/analyzer/lib/src/dart/element/type.dart b/pkg/analyzer/lib/src/dart/element/type.dart
index 88303a6..5816df8 100644
--- a/pkg/analyzer/lib/src/dart/element/type.dart
+++ b/pkg/analyzer/lib/src/dart/element/type.dart
@@ -659,7 +659,7 @@
@override
List<ConstructorElementMixin2> get constructors2 {
return _constructors ??=
- element3.constructors2.map((constructor) {
+ element3.constructors.map((constructor) {
return ConstructorMember.from2(constructor, this);
}).toFixedList();
}
diff --git a/pkg/analyzer/lib/src/error/unused_local_elements_verifier.dart b/pkg/analyzer/lib/src/error/unused_local_elements_verifier.dart
index f115687..5e8586e 100644
--- a/pkg/analyzer/lib/src/error/unused_local_elements_verifier.dart
+++ b/pkg/analyzer/lib/src/error/unused_local_elements_verifier.dart
@@ -1047,7 +1047,7 @@
// constructor in the class. A single unused, private constructor may serve
// the purpose of preventing the class from being extended. In serving this
// purpose, the constructor is "used."
- if (element.enclosingElement.constructors2.length > 1 &&
+ if (element.enclosingElement.constructors.length > 1 &&
!_isUsedMember(element)) {
_reportDiagnosticForElement(WarningCode.UNUSED_ELEMENT, element, [
element.displayName,
diff --git a/pkg/analyzer/lib/src/fine/library_manifest.dart b/pkg/analyzer/lib/src/fine/library_manifest.dart
index 23c3d6b..f2ab1a1 100644
--- a/pkg/analyzer/lib/src/fine/library_manifest.dart
+++ b/pkg/analyzer/lib/src/fine/library_manifest.dart
@@ -205,7 +205,7 @@
// The supertype could be a mixin application itself.
addForElement(superElement);
- for (var constructor in element.constructors2) {
+ for (var constructor in element.constructors) {
var lookupName = constructor.lookupName?.asLookupName;
if (lookupName == null) {
continue;
@@ -416,7 +416,7 @@
return;
}
- for (var constructor in instanceElement.constructors2) {
+ for (var constructor in instanceElement.constructors) {
_addInterfaceElementConstructor(
encodingContext: encodingContext,
interfaceItem: interfaceItem,
@@ -1211,7 +1211,7 @@
required InterfaceElementImpl2 interfaceElement,
required InterfaceItem item,
}) {
- for (var constructor in interfaceElement.constructors2) {
+ for (var constructor in interfaceElement.constructors) {
if (!_matchInterfaceElementConstructor(
interfaceItem: item,
interfaceMatchContext: matchContext,
diff --git a/pkg/analyzer/lib/src/generated/element_resolver.dart b/pkg/analyzer/lib/src/generated/element_resolver.dart
index 2102c74..d7e3a53 100644
--- a/pkg/analyzer/lib/src/generated/element_resolver.dart
+++ b/pkg/analyzer/lib/src/generated/element_resolver.dart
@@ -409,7 +409,7 @@
} else {
if (element.isFactory &&
// Check if we've reported [NO_GENERATIVE_CONSTRUCTORS_IN_SUPERCLASS].
- !element.enclosingElement.constructors2.every(
+ !element.enclosingElement.constructors.every(
(constructor) => constructor.isFactory,
)) {
_errorReporter.atNode(
diff --git a/pkg/analyzer/lib/src/generated/error_verifier.dart b/pkg/analyzer/lib/src/generated/error_verifier.dart
index 845d75d..6640c3d 100644
--- a/pkg/analyzer/lib/src/generated/error_verifier.dart
+++ b/pkg/analyzer/lib/src/generated/error_verifier.dart
@@ -3482,7 +3482,7 @@
) {
if (fragment is InterfaceFragmentImpl) {
var element = fragment.element;
- for (var constructor in element.constructors2) {
+ for (var constructor in element.constructors) {
if (constructor.isGenerative && !constructor.isSynthetic) {
return;
}
@@ -3950,7 +3950,7 @@
return;
}
- var hasGenerativeConstConstructor = enclosingClass.constructors2.any(
+ var hasGenerativeConstConstructor = enclosingClass.constructors.any(
(c) => c.isConst && !c.isFactory,
);
if (!hasGenerativeConstConstructor) return;
@@ -4172,7 +4172,7 @@
NamedType mixinName,
InterfaceElement mixinElement,
) {
- for (var constructor in mixinElement.constructors2) {
+ for (var constructor in mixinElement.constructors) {
if (!constructor.isSynthetic && !constructor.isFactory) {
errorReporter.atNode(
mixinName,
@@ -4529,7 +4529,7 @@
/// See [CompileTimeErrorCode.NO_DEFAULT_SUPER_CONSTRUCTOR_IMPLICIT].
void _checkForNoDefaultSuperConstructorImplicit(ClassFragmentImpl fragment) {
// do nothing if there is explicit constructor
- var constructors = fragment.element.constructors2;
+ var constructors = fragment.element.constructors;
if (!constructors[0].isSynthetic) {
return;
}
@@ -4575,7 +4575,7 @@
if (superType == null) {
return false;
}
- if (_enclosingClass!.constructors2.every(
+ if (_enclosingClass!.constructors.every(
(constructor) => constructor.isFactory,
)) {
// A class with no generative constructors *can* be extended if the
@@ -4583,11 +4583,11 @@
return false;
}
var superElement = superType.element3;
- if (superElement.constructors2.isEmpty) {
+ if (superElement.constructors.isEmpty) {
// Exclude empty constructor set, which indicates other errors occurred.
return false;
}
- if (superElement.constructors2.every(
+ if (superElement.constructors.every(
(constructor) => constructor.isFactory,
)) {
// For `E extends Exception`, etc., this will never work, because it has
@@ -5381,7 +5381,7 @@
}
var superElement = superType.element3;
- if (superElement.constructors2.every(
+ if (superElement.constructors.every(
(constructor) => constructor.isFactory,
)) {
// Already reported [NO_GENERATIVE_CONSTRUCTORS_IN_SUPERCLASS].
diff --git a/pkg/analyzer/lib/src/summary2/constructor_initializer_resolver.dart b/pkg/analyzer/lib/src/summary2/constructor_initializer_resolver.dart
index 07b3898..e398927 100644
--- a/pkg/analyzer/lib/src/summary2/constructor_initializer_resolver.dart
+++ b/pkg/analyzer/lib/src/summary2/constructor_initializer_resolver.dart
@@ -26,7 +26,7 @@
];
for (var interfaceElement in interfaceElements) {
- for (var constructorElement in interfaceElement.constructors2) {
+ for (var constructorElement in interfaceElement.constructors) {
_constructorElement(interfaceElement, constructorElement);
}
}
diff --git a/pkg/analyzer/lib/src/summary2/extension_type.dart b/pkg/analyzer/lib/src/summary2/extension_type.dart
index 0329eb1..542f7a0 100644
--- a/pkg/analyzer/lib/src/summary2/extension_type.dart
+++ b/pkg/analyzer/lib/src/summary2/extension_type.dart
@@ -162,7 +162,7 @@
.where(typeSystem.isValidExtensionTypeSuperinterface)
.toFixedList();
- var primaryConstructor = element.constructors2.first;
+ var primaryConstructor = element.constructors.first;
var primaryFormalParameter = primaryConstructor.formalParameters.first;
primaryFormalParameter as FieldFormalParameterElementImpl2;
primaryFormalParameter.type = type;
diff --git a/pkg/analyzer/lib/src/summary2/library_builder.dart b/pkg/analyzer/lib/src/summary2/library_builder.dart
index 49535a4..a549794 100644
--- a/pkg/analyzer/lib/src/summary2/library_builder.dart
+++ b/pkg/analyzer/lib/src/summary2/library_builder.dart
@@ -196,7 +196,7 @@
void buildEnumSyntheticConstructors() {
bool hasConstructor(EnumFragmentImpl fragment) {
- for (var constructor in fragment.element.constructors2) {
+ for (var constructor in fragment.element.constructors) {
if (constructor.isGenerative || constructor.name3 == 'new') {
return true;
}
@@ -269,7 +269,7 @@
if (classFragment is! ClassFragmentImpl) continue;
if (classFragment.isMixinApplication) continue;
if (classFragment.isAugmentation) continue;
- var hasConst = classFragment.element.constructors2.any((e) => e.isConst);
+ var hasConst = classFragment.element.constructors.any((e) => e.isConst);
if (hasConst) {
withConstConstructors.add(classFragment);
}
diff --git a/pkg/analyzer/lib/src/summary2/super_constructor_resolver.dart b/pkg/analyzer/lib/src/summary2/super_constructor_resolver.dart
index e9ffdf2..099a783 100644
--- a/pkg/analyzer/lib/src/summary2/super_constructor_resolver.dart
+++ b/pkg/analyzer/lib/src/summary2/super_constructor_resolver.dart
@@ -16,7 +16,7 @@
void perform() {
for (var builder in _linker.builders.values) {
for (var classElement in builder.element.classes) {
- for (var constructorElement in classElement.constructors2) {
+ for (var constructorElement in classElement.constructors) {
_constructor(classElement, constructorElement);
}
}
diff --git a/pkg/analyzer/lib/src/test_utilities/find_element2.dart b/pkg/analyzer/lib/src/test_utilities/find_element2.dart
index adc9359..19e16aa 100644
--- a/pkg/analyzer/lib/src/test_utilities/find_element2.dart
+++ b/pkg/analyzer/lib/src/test_utilities/find_element2.dart
@@ -186,7 +186,7 @@
for (var class_ in classes) {
findInExecutables(class_.getters);
findInExecutables(class_.setters);
- findInExecutables(class_.constructors2);
+ findInExecutables(class_.constructors);
findInExecutables(class_.methods);
}
}
@@ -361,19 +361,19 @@
for (var class_ in libraryElement.classes) {
if (of == null || class_.name3 == of) {
- findIn(class_.constructors2);
+ findIn(class_.constructors);
}
}
for (var enum_ in libraryElement.enums) {
if (of == null || enum_.name3 == of) {
- findIn(enum_.constructors2);
+ findIn(enum_.constructors);
}
}
for (var extensionType in libraryElement.extensionTypes) {
if (of == null || extensionType.name3 == of) {
- findIn(extensionType.constructors2);
+ findIn(extensionType.constructors);
}
}
@@ -447,7 +447,7 @@
FormalParameterElement? result;
for (var class_ in libraryElement.classes) {
- for (var constructor in class_.constructors2) {
+ for (var constructor in class_.constructors) {
for (var formalParameter in constructor.formalParameters) {
if (formalParameter.name3 == name) {
if (result != null) {
@@ -512,7 +512,7 @@
return _findInClassesLike(
className: name,
fromClass:
- (e) => e.constructors2.firstWhereOrNull((element) {
+ (e) => e.constructors.firstWhereOrNull((element) {
return element.name3 == 'new';
}),
fromExtension: (_) => null,
diff --git a/pkg/analyzer/test/src/dart/analysis/search_test.dart b/pkg/analyzer/test/src/dart/analysis/search_test.dart
index 54fa955..80a529c 100644
--- a/pkg/analyzer/test/src/dart/analysis/search_test.dart
+++ b/pkg/analyzer/test/src/dart/analysis/search_test.dart
@@ -929,7 +929,7 @@
''');
var A = findElement2.class_('A');
- var element = A.constructors2.single;
+ var element = A.constructors.single;
expect(element.name3, 'named');
await assertElementReferencesText(element, r'''
diff --git a/pkg/analyzer/test/src/dart/resolution/constant_test.dart b/pkg/analyzer/test/src/dart/resolution/constant_test.dart
index 8a3c23c..5f25646 100644
--- a/pkg/analyzer/test/src/dart/resolution/constant_test.dart
+++ b/pkg/analyzer/test/src/dart/resolution/constant_test.dart
@@ -39,7 +39,7 @@
);
var aLib = findElement2.import('package:test/a.dart').importedLibrary2!;
- var aConstructor = aLib.getClass2('A')!.constructors2.single;
+ var aConstructor = aLib.getClass2('A')!.constructors.single;
var p = aConstructor.formalParameters.single;
var pf = p.firstFragment as DefaultParameterFragmentImpl;
diff --git a/pkg/analyzer/test/src/summary/element_text.dart b/pkg/analyzer/test/src/summary/element_text.dart
index 1db64c6..52ee0b8 100644
--- a/pkg/analyzer/test/src/summary/element_text.dart
+++ b/pkg/analyzer/test/src/summary/element_text.dart
@@ -1178,7 +1178,7 @@
_writeElementList('fields', e, e.fields, _writeFieldElement);
if (e is InterfaceElementImpl2) {
- var constructors = e.constructors2;
+ var constructors = e.constructors;
if (e is MixinElementImpl2) {
expect(constructors, isEmpty);
} else if (configuration.withConstructors) {
@@ -1250,7 +1250,7 @@
);
_writeFragmentList('fields', f, f.fields, _writeFieldFragment);
if (f is InterfaceFragment) {
- var constructors = f.constructors2;
+ var constructors = f.constructors;
if (f is MixinElement) {
expect(constructors, isEmpty);
} else if (configuration.withConstructors) {
diff --git a/pkg/analyzer/test/src/summary/elements/class_test.dart b/pkg/analyzer/test/src/summary/elements/class_test.dart
index d77b804..759b153 100644
--- a/pkg/analyzer/test/src/summary/elements/class_test.dart
+++ b/pkg/analyzer/test/src/summary/elements/class_test.dart
@@ -11832,7 +11832,7 @@
}
''');
- var constructors = library.getClass2('A')!.constructors2;
+ var constructors = library.getClass2('A')!.constructors;
expect(constructors, hasLength(1));
}
@@ -18004,7 +18004,7 @@
''');
var X = library.getClass2('X')!;
- expect(X.constructors2, hasLength(1));
+ expect(X.constructors, hasLength(1));
}
test_classAlias_constructors_default() async {
diff --git a/pkg/linter/lib/src/extensions.dart b/pkg/linter/lib/src/extensions.dart
index 0b26d1c..bdaedc9 100644
--- a/pkg/linter/lib/src/extensions.dart
+++ b/pkg/linter/lib/src/extensions.dart
@@ -202,7 +202,7 @@
}
// With only private non-factory constructors.
- for (var constructor in constructors2) {
+ for (var constructor in constructors) {
if (!constructor.isPrivate || constructor.isFactory) {
return null;
}
diff --git a/pkg/linter/lib/src/rules/avoid_classes_with_only_static_members.dart b/pkg/linter/lib/src/rules/avoid_classes_with_only_static_members.dart
index 7b5e7ac..b29a85b 100644
--- a/pkg/linter/lib/src/rules/avoid_classes_with_only_static_members.dart
+++ b/pkg/linter/lib/src/rules/avoid_classes_with_only_static_members.dart
@@ -56,7 +56,7 @@
var declaredElement = node.declaredFragment?.element;
if (declaredElement == null) return;
- var constructors = declaredElement.constructors2;
+ var constructors = declaredElement.constructors;
if (constructors.isNotEmpty &&
constructors.any((c) => !c.isDefaultConstructor)) {
return;
diff --git a/pkg/linter/lib/src/rules/avoid_field_initializers_in_const_classes.dart b/pkg/linter/lib/src/rules/avoid_field_initializers_in_const_classes.dart
index 3627f76..f658447 100644
--- a/pkg/linter/lib/src/rules/avoid_field_initializers_in_const_classes.dart
+++ b/pkg/linter/lib/src/rules/avoid_field_initializers_in_const_classes.dart
@@ -70,7 +70,7 @@
if (element == null) return;
// no lint if several constructors
- if (element.constructors2.length > 1) return;
+ if (element.constructors.length > 1) return;
var visitor = HasParameterReferenceVisitor(
declaration.parameters.parameterFragments,
@@ -93,7 +93,7 @@
var declaredElement = parent.declaredFragment?.element;
if (declaredElement == null) return;
- if (declaredElement.constructors2.every((e) => !e.isConst)) {
+ if (declaredElement.constructors.every((e) => !e.isConst)) {
return;
}
for (var variable in node.fields.variables) {
diff --git a/pkg/linter/lib/src/rules/unreachable_from_main.dart b/pkg/linter/lib/src/rules/unreachable_from_main.dart
index 7145035..0dcb0ed 100644
--- a/pkg/linter/lib/src/rules/unreachable_from_main.dart
+++ b/pkg/linter/lib/src/rules/unreachable_from_main.dart
@@ -191,7 +191,7 @@
if (metadata.annotations[i].isReflectiveTest) {
// The class is instantiated through the use of mirrors in
// 'test_reflective_loader'.
- var unnamedConstructor = element.constructors2.firstWhereOrNull(
+ var unnamedConstructor = element.constructors.firstWhereOrNull(
(constructor) => constructor.name3 == 'new',
);
if (unnamedConstructor != null) {
diff --git a/pkg/linter/lib/src/rules/use_key_in_widget_constructors.dart b/pkg/linter/lib/src/rules/use_key_in_widget_constructors.dart
index efb6bd4..28c0d66 100644
--- a/pkg/linter/lib/src/rules/use_key_in_widget_constructors.dart
+++ b/pkg/linter/lib/src/rules/use_key_in_widget_constructors.dart
@@ -44,7 +44,7 @@
if (classElement != null &&
classElement.isPublic &&
classElement.extendsWidget &&
- classElement.constructors2.where((e) => !e.isSynthetic).isEmpty) {
+ classElement.constructors.where((e) => !e.isSynthetic).isEmpty) {
rule.reportAtToken(node.name);
}
super.visitClassDeclaration(node);