Skip to content

Commit 2f478a7

Browse files
scheglovCommit Queue
authored andcommitted
Elements. Remove V1 ParameterElement.
Change-Id: I5ebfcf9a15548dc3bf0541f058c6c46a9e8bdc0a Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/423065 Commit-Queue: Konstantin Shcheglov <[email protected]> Reviewed-by: Brian Wilkerson <[email protected]>
1 parent 8c65536 commit 2f478a7

File tree

5 files changed

+55
-183
lines changed

5 files changed

+55
-183
lines changed

pkg/analyzer/api.txt

Lines changed: 0 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -3169,27 +3169,6 @@ package:analyzer/dart/element/element.dart:
31693169
NamespaceCombinator (class extends Object, sealed (immediate subtypes: HideElementCombinator, ShowElementCombinator)):
31703170
end (getter: int)
31713171
offset (getter: int)
3172-
ParameterElement (class extends Object implements PromotableElement, ConstantEvaluationTarget, deprecated):
3173-
new (constructor: ParameterElement Function())
3174-
declaration (getter: ParameterElement)
3175-
defaultValueCode (getter: String?)
3176-
element (getter: FormalParameterElement, experimental)
3177-
hasDefaultValue (getter: bool)
3178-
isCovariant (getter: bool)
3179-
isInitializingFormal (getter: bool)
3180-
isNamed (getter: bool)
3181-
isOptional (getter: bool)
3182-
isOptionalNamed (getter: bool)
3183-
isOptionalPositional (getter: bool)
3184-
isPositional (getter: bool)
3185-
isRequired (getter: bool)
3186-
isRequiredNamed (getter: bool)
3187-
isRequiredPositional (getter: bool)
3188-
isSuperFormal (getter: bool)
3189-
name (getter: String)
3190-
parameterKind (getter: ParameterKind, deprecated)
3191-
parameters (getter: List<ParameterElement>)
3192-
appendToWithoutDelimiters (method: void Function(StringBuffer, {bool withNullability}))
31933172
PartElement (class extends Object implements _ExistingElement, deprecated):
31943173
new (constructor: PartElement Function())
31953174
uri (getter: DirectiveUri)
@@ -4808,27 +4787,6 @@ package:analyzer/src/generated/timestamped_data.dart:
48084787
new (constructor: TimestampedData<E> Function(int, E))
48094788
data (getter: E)
48104789
modificationTime (getter: int)
4811-
package:analyzer/src/generated/utilities_dart.dart:
4812-
ParameterKind (class extends Object implements Comparable<ParameterKind>):
4813-
NAMED (static getter: ParameterKind)
4814-
NAMED_REQUIRED (static getter: ParameterKind)
4815-
POSITIONAL (static getter: ParameterKind)
4816-
REQUIRED (static getter: ParameterKind)
4817-
values (static getter: List<ParameterKind>)
4818-
new (constructor: ParameterKind Function({required bool isNamed, required bool isOptional, required bool isOptionalNamed, required bool isOptionalPositional, required bool isPositional, required bool isRequired, required bool isRequiredNamed, required bool isRequiredPositional, required String name, required int ordinal}))
4819-
hashCode (getter: int)
4820-
isNamed (getter: bool)
4821-
isOptional (getter: bool)
4822-
isOptionalNamed (getter: bool)
4823-
isOptionalPositional (getter: bool)
4824-
isPositional (getter: bool)
4825-
isRequired (getter: bool)
4826-
isRequiredNamed (getter: bool)
4827-
isRequiredPositional (getter: bool)
4828-
name (getter: String)
4829-
ordinal (getter: int)
4830-
compareTo (method: int Function(ParameterKind))
4831-
toString (method: String Function())
48324790
package:analyzer/src/lint/config.dart:
48334791
RuleConfig (non-public)
48344792
package:analyzer/src/lint/linter.dart:

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

Lines changed: 0 additions & 101 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,6 @@ import 'package:analyzer/src/dart/element/element.dart'
5252
show elementModelDeprecationMsg;
5353
import 'package:analyzer/src/dart/resolver/scope.dart' show Namespace;
5454
import 'package:analyzer/src/generated/engine.dart' show AnalysisContext;
55-
import 'package:analyzer/src/generated/utilities_dart.dart';
5655
// ignore: deprecated_member_use_from_same_package
5756
import 'package:analyzer/src/task/api/model.dart' show AnalysisTarget;
5857
import 'package:meta/meta.dart';
@@ -876,106 +875,6 @@ sealed class NamespaceCombinator {
876875
int get offset;
877876
}
878877

879-
/// A parameter defined within an executable element.
880-
///
881-
/// Clients may not extend, implement or mix-in this class.
882-
@Deprecated('Use FormalParameterElement instead')
883-
abstract class ParameterElement
884-
implements PromotableElement, ConstantEvaluationTarget {
885-
@override
886-
ParameterElement get declaration;
887-
888-
/// The code of the default value, or `null` if no default value.
889-
String? get defaultValueCode;
890-
891-
@experimental
892-
FormalParameterElement get element;
893-
894-
/// Whether the parameter has a default value.
895-
bool get hasDefaultValue;
896-
897-
/// Whether the parameter is covariant, meaning it is allowed to have a
898-
/// narrower type in an override.
899-
bool get isCovariant;
900-
901-
/// Whether the parameter is an initializing formal parameter.
902-
bool get isInitializingFormal;
903-
904-
/// Whether the parameter is a named parameter.
905-
///
906-
/// Named parameters that are annotated with the `@required` annotation are
907-
/// considered optional. Named parameters that are annotated with the
908-
/// `required` syntax are considered required.
909-
bool get isNamed;
910-
911-
/// Whether the parameter is an optional parameter.
912-
///
913-
/// Optional parameters can either be positional or named. Named parameters
914-
/// that are annotated with the `@required` annotation are considered
915-
/// optional. Named parameters that are annotated with the `required` syntax
916-
/// are considered required.
917-
bool get isOptional;
918-
919-
/// Whether the parameter is both an optional and named parameter.
920-
///
921-
/// Named parameters that are annotated with the `@required` annotation are
922-
/// considered optional. Named parameters that are annotated with the
923-
/// `required` syntax are considered required.
924-
bool get isOptionalNamed;
925-
926-
/// Whether the parameter is both an optional and positional parameter.
927-
bool get isOptionalPositional;
928-
929-
/// Whether the parameter is a positional parameter.
930-
///
931-
/// Positional parameters can either be required or optional.
932-
bool get isPositional;
933-
934-
/// Whether the parameter is either a required positional parameter, or a
935-
/// named parameter with the `required` keyword.
936-
///
937-
/// Note: the presence or absence of the `@required` annotation does not
938-
/// change the meaning of this getter. The parameter `{@required int x}`
939-
/// will return `false` and the parameter `{@required required int x}`
940-
/// will return `true`.
941-
bool get isRequired;
942-
943-
/// Whether the parameter is both a required and named parameter.
944-
///
945-
/// Named parameters that are annotated with the `@required` annotation are
946-
/// considered optional. Named parameters that are annotated with the
947-
/// `required` syntax are considered required.
948-
bool get isRequiredNamed;
949-
950-
/// Whether the parameter is both a required and positional parameter.
951-
bool get isRequiredPositional;
952-
953-
/// Whether the parameter is a super formal parameter.
954-
bool get isSuperFormal;
955-
956-
@override
957-
String get name;
958-
959-
/// The kind of this parameter.
960-
@Deprecated('Use the getters isOptionalNamed, isOptionalPositional, '
961-
'isRequiredNamed, and isRequiredPositional')
962-
ParameterKind get parameterKind;
963-
964-
/// The parameters defined by this parameter.
965-
///
966-
/// A parameter will only define other parameters if it is a function typed
967-
/// parameter.
968-
List<ParameterElement> get parameters;
969-
970-
/// Appends the type, name and possibly the default value of this parameter
971-
/// to the given [buffer].
972-
void appendToWithoutDelimiters(
973-
StringBuffer buffer, {
974-
@Deprecated('Only non-nullable by default mode is supported')
975-
bool withNullability = true,
976-
});
977-
}
978-
979878
/// A 'part' directive within a library.
980879
///
981880
/// Clients may not extend, implement or mix-in this class.

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

Lines changed: 54 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -8491,12 +8491,8 @@ abstract class NonParameterVariableElementImpl extends VariableElementImpl
84918491
}
84928492

84938493
class ParameterElementImpl extends VariableElementImpl
8494-
with
8495-
ParameterElementMixin
8496-
implements
8497-
// ignore:deprecated_member_use_from_same_package,analyzer_use_new_elements
8498-
ParameterElement,
8499-
FormalParameterFragment {
8494+
with ParameterElementMixin
8495+
implements FormalParameterFragment {
85008496
@override
85018497
String? name2;
85028498

@@ -8581,7 +8577,7 @@ class ParameterElementImpl extends VariableElementImpl
85818577
@override
85828578
Fragment? get enclosingFragment => enclosingElement3 as Fragment?;
85838579

8584-
@override
8580+
/// Whether the parameter has a default value.
85858581
bool get hasDefaultValue {
85868582
return defaultValueCode != null;
85878583
}
@@ -8611,7 +8607,7 @@ class ParameterElementImpl extends VariableElementImpl
86118607
@override
86128608
bool get isLate => false;
86138609

8614-
@override
8610+
/// Whether the parameter is a super formal parameter.
86158611
bool get isSuperFormal => false;
86168612

86178613
@override
@@ -8744,46 +8740,77 @@ class ParameterElementImpl_ofImplicitSetter extends ParameterElementImpl {
87448740

87458741
/// A mixin that provides a common implementation for methods defined in
87468742
/// `ParameterElement`.
8747-
mixin ParameterElementMixin
8748-
implements
8749-
// ignore:deprecated_member_use_from_same_package,analyzer_use_new_elements
8750-
ParameterElement,
8751-
VariableElementOrMember {
8743+
mixin ParameterElementMixin implements VariableElementOrMember {
87528744
@override
87538745
ParameterElementImpl get declaration;
87548746

8755-
@override
8747+
/// The code of the default value, or `null` if no default value.
8748+
String? get defaultValueCode;
8749+
87568750
FormalParameterElementImpl get element;
87578751

8758-
@override
8752+
/// Whether the parameter is covariant, meaning it is allowed to have a
8753+
/// narrower type in an override.
8754+
bool get isCovariant;
8755+
8756+
/// Whether the parameter is an initializing formal parameter.
8757+
bool get isInitializingFormal;
8758+
8759+
/// Whether the parameter is a named parameter.
8760+
///
8761+
/// Named parameters that are annotated with the `@required` annotation are
8762+
/// considered optional. Named parameters that are annotated with the
8763+
/// `required` syntax are considered required.
87598764
bool get isNamed => parameterKind.isNamed;
87608765

8761-
@override
8766+
/// Whether the parameter is an optional parameter.
8767+
///
8768+
/// Optional parameters can either be positional or named. Named parameters
8769+
/// that are annotated with the `@required` annotation are considered
8770+
/// optional. Named parameters that are annotated with the `required` syntax
8771+
/// are considered required.
87628772
bool get isOptional => parameterKind.isOptional;
87638773

8764-
@override
8774+
/// Whether the parameter is both an optional and named parameter.
8775+
///
8776+
/// Named parameters that are annotated with the `@required` annotation are
8777+
/// considered optional. Named parameters that are annotated with the
8778+
/// `required` syntax are considered required.
87658779
bool get isOptionalNamed => parameterKind.isOptionalNamed;
87668780

8767-
@override
8781+
/// Whether the parameter is both an optional and positional parameter.
87688782
bool get isOptionalPositional => parameterKind.isOptionalPositional;
87698783

8770-
@override
8784+
/// Whether the parameter is a positional parameter.
8785+
///
8786+
/// Positional parameters can either be required or optional.
87718787
bool get isPositional => parameterKind.isPositional;
87728788

8773-
@override
8789+
/// Whether the parameter is either a required positional parameter, or a
8790+
/// named parameter with the `required` keyword.
8791+
///
8792+
/// Note: the presence or absence of the `@required` annotation does not
8793+
/// change the meaning of this getter. The parameter `{@required int x}`
8794+
/// will return `false` and the parameter `{@required required int x}`
8795+
/// will return `true`.
87748796
bool get isRequired => parameterKind.isRequired;
87758797

8776-
@override
8798+
/// Whether the parameter is both a required and named parameter.
8799+
///
8800+
/// Named parameters that are annotated with the `@required` annotation are
8801+
/// considered optional. Named parameters that are annotated with the
8802+
/// `required` syntax are considered required.
87778803
bool get isRequiredNamed => parameterKind.isRequiredNamed;
87788804

8779-
@override
8805+
/// Whether the parameter is both a required and positional parameter.
87808806
bool get isRequiredPositional => parameterKind.isRequiredPositional;
87818807

8782-
@override
8783-
// Overridden to remove the 'deprecated' annotation.
87848808
ParameterKind get parameterKind;
87858809

8786-
@override
8810+
/// The parameters defined by this parameter.
8811+
///
8812+
/// A parameter will only define other parameters if it is a function typed
8813+
/// parameter.
87878814
List<ParameterElementMixin> get parameters;
87888815

87898816
@override
@@ -8795,7 +8822,8 @@ mixin ParameterElementMixin
87958822
/// parameter.
87968823
List<TypeParameterElementImpl> get typeParameters;
87978824

8798-
@override
8825+
/// Appends the type, name and possibly the default value of this parameter
8826+
/// to the given [buffer].
87998827
void appendToWithoutDelimiters(
88008828
StringBuffer buffer, {
88018829
@Deprecated('Only non-nullable by default mode is supported')

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

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1064,12 +1064,7 @@ class MethodMember extends ExecutableMember
10641064
/// A parameter element defined in a parameterized type where the values of the
10651065
/// type parameters are known.
10661066
class ParameterMember extends VariableMember
1067-
with
1068-
ParameterElementMixin,
1069-
FormalParameterElementMixin
1070-
implements
1071-
// ignore:deprecated_member_use_from_same_package,analyzer_use_new_elements
1072-
ParameterElement {
1067+
with ParameterElementMixin, FormalParameterElementMixin {
10731068
@override
10741069
final List<TypeParameterElementImpl> typeParameters;
10751070

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

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -362,14 +362,6 @@ extension FieldElementOrMemberExtension on FieldElementOrMember {
362362
}
363363

364364
extension FormalParameterElementExtension on FormalParameterElement {
365-
@Deprecated(elementModelDeprecationMsg)
366-
ParameterElement get asElement {
367-
if (this case ParameterMember member) {
368-
return member;
369-
}
370-
return firstFragment as ParameterElement;
371-
}
372-
373365
void appendToWithoutDelimiters(
374366
StringBuffer buffer, {
375367
@Deprecated('Only non-nullable by default mode is supported')

0 commit comments

Comments
 (0)