Skip to content

Commit e0455b7

Browse files
srawlinsCommit Queue
authored andcommitted
analyzer: Migrate element model - mock_sdk_elements.dart
Change-Id: I700031432b19342a009fde3e2839cf32620405c6 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/410841 Reviewed-by: Konstantin Shcheglov <[email protected]> Auto-Submit: Samuel Rawlins <[email protected]> Commit-Queue: Konstantin Shcheglov <[email protected]>
1 parent 3cf0963 commit e0455b7

File tree

1 file changed

+38
-31
lines changed

1 file changed

+38
-31
lines changed

pkg/analyzer/lib/src/test_utilities/mock_sdk_elements.dart

Lines changed: 38 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,8 @@
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/analysis/features.dart';
8-
import 'package:analyzer/dart/element/element.dart';
6+
import 'package:analyzer/dart/element/element2.dart';
97
import 'package:analyzer/dart/element/nullability_suffix.dart';
108
import 'package:analyzer/dart/element/type.dart';
119
import 'package:analyzer/source/line_info.dart';
@@ -978,12 +976,13 @@ class _MockSdkElementsBuilder {
978976
ClassElementImpl _class({
979977
required String name,
980978
bool isAbstract = false,
981-
List<TypeParameterElementImpl> typeParameters = const [],
979+
List<TypeParameterElementImpl2> typeParameters = const [],
982980
required CompilationUnitElementImpl unit,
983981
}) {
984982
var fragment = ClassElementImpl(name, 0);
985983
ClassElementImpl2(Reference.root(), fragment);
986-
fragment.typeParameters = typeParameters;
984+
fragment.typeParameters =
985+
typeParameters.map((tp) => tp.firstFragment).toList();
987986
fragment.constructors = <ConstructorElementImpl>[
988987
_constructor(),
989988
];
@@ -995,13 +994,14 @@ class _MockSdkElementsBuilder {
995994
String name = '',
996995
bool isConst = false,
997996
bool isFactory = false,
998-
List<ParameterElementImpl> parameters = const [],
997+
List<FormalParameterElement> parameters = const [],
999998
}) {
1000999
var element = ConstructorElementImpl(name, 0);
10011000
element.name2 = name.ifNotEmptyOrElse('new');
10021001
element.isFactory = isFactory;
10031002
element.isConst = isConst;
1004-
element.parameters = parameters;
1003+
element.parameters =
1004+
parameters.map((p) => p.firstFragment as ParameterElementImpl).toList();
10051005
return element;
10061006
}
10071007

@@ -1019,10 +1019,12 @@ class _MockSdkElementsBuilder {
10191019
String name,
10201020
DartType returnType, {
10211021
List<TypeParameterElementImpl> typeFormals = const [],
1022-
List<ParameterElementImpl> parameters = const [],
1022+
List<FormalParameterElement> parameters = const [],
10231023
}) {
10241024
var fragment = FunctionElementImpl(name, 0)
10251025
..parameters = parameters
1026+
.map((p) => p.firstFragment as ParameterElementImpl)
1027+
.toList()
10261028
..returnType = returnType
10271029
..typeParameters = typeFormals;
10281030
TopLevelFunctionElementImpl(Reference.root(), fragment);
@@ -1031,12 +1033,12 @@ class _MockSdkElementsBuilder {
10311033

10321034
FunctionTypeImpl _functionType({
10331035
required TypeImpl returnType,
1034-
List<TypeParameterElementImpl> typeFormals = const [],
1035-
List<ParameterElement> parameters = const [],
1036+
List<TypeParameterElementImpl2> typeFormals = const [],
1037+
List<FormalParameterElement> parameters = const [],
10361038
}) {
1037-
return FunctionTypeImpl(
1038-
typeFormals: typeFormals,
1039-
parameters: parameters.cast(),
1039+
return FunctionTypeImpl.v2(
1040+
typeParameters: typeFormals,
1041+
formalParameters: parameters.cast(),
10401042
returnType: returnType,
10411043
nullabilitySuffix: NullabilitySuffix.none,
10421044
);
@@ -1078,28 +1080,30 @@ class _MockSdkElementsBuilder {
10781080
String name,
10791081
DartType returnType, {
10801082
List<TypeParameterElementImpl> typeFormals = const [],
1081-
List<ParameterElementImpl> parameters = const [],
1083+
List<FormalParameterElement> parameters = const [],
10821084
}) {
10831085
var fragment = MethodElementImpl(name, 0)
10841086
..parameters = parameters
1087+
.map((p) => p.firstFragment as ParameterElementImpl)
1088+
.toList()
10851089
..returnType = returnType
10861090
..typeParameters = typeFormals;
10871091
MethodElementImpl2(Reference.root(), name, fragment);
10881092
return fragment;
10891093
}
10901094

1091-
ParameterElementImpl _namedParameter(String name, TypeImpl type,
1095+
FormalParameterElement _namedParameter(String name, TypeImpl type,
10921096
{String? initializerCode}) {
1093-
var parameter = DefaultParameterElementImpl(
1097+
var fragment = DefaultParameterElementImpl(
10941098
name: name,
10951099
nameOffset: 0,
10961100
name2: name,
10971101
nameOffset2: 0,
10981102
parameterKind: ParameterKind.NAMED,
10991103
);
1100-
parameter.type = type;
1101-
parameter.defaultValueCode = initializerCode;
1102-
return parameter;
1104+
fragment.type = type;
1105+
fragment.defaultValueCode = initializerCode;
1106+
return FormalParameterElementImpl(fragment);
11031107
}
11041108

11051109
void _populateAsync() {
@@ -1171,28 +1175,28 @@ class _MockSdkElementsBuilder {
11711175
_fillLibraryFromFragment(_coreLibrary, _coreUnit);
11721176
}
11731177

1174-
ParameterElementImpl _positionalParameter(String name, TypeImpl type) {
1175-
var parameter = ParameterElementImpl(
1178+
FormalParameterElement _positionalParameter(String name, TypeImpl type) {
1179+
var fragment = ParameterElementImpl(
11761180
name: name,
11771181
nameOffset: 0,
11781182
name2: name,
11791183
nameOffset2: 0,
11801184
parameterKind: ParameterKind.POSITIONAL,
11811185
);
1182-
parameter.type = type;
1183-
return parameter;
1186+
fragment.type = type;
1187+
return FormalParameterElementImpl(fragment);
11841188
}
11851189

1186-
ParameterElementImpl _requiredParameter(String name, TypeImpl type) {
1187-
var parameter = ParameterElementImpl(
1190+
FormalParameterElement _requiredParameter(String name, TypeImpl type) {
1191+
var fragment = ParameterElementImpl(
11881192
name: name,
11891193
nameOffset: 0,
11901194
name2: name,
11911195
nameOffset2: 0,
11921196
parameterKind: ParameterKind.REQUIRED,
11931197
);
1194-
parameter.type = type;
1195-
return parameter;
1198+
fragment.type = type;
1199+
return FormalParameterElementImpl(fragment);
11961200
}
11971201

11981202
/// Set the [accessors] and the corresponding fields for the [classElement].
@@ -1219,12 +1223,15 @@ class _MockSdkElementsBuilder {
12191223
return fragment;
12201224
}
12211225

1222-
TypeParameterElementImpl _typeParameter(String name) {
1223-
return TypeParameterElementImpl(name, 0);
1226+
TypeParameterElementImpl2 _typeParameter(String name) {
1227+
return TypeParameterElementImpl2(
1228+
firstFragment: TypeParameterElementImpl(name, 0),
1229+
name3: name.nullIfEmpty,
1230+
);
12241231
}
12251232

1226-
TypeParameterTypeImpl _typeParameterType(TypeParameterElement element) {
1227-
return TypeParameterTypeImpl(
1233+
TypeParameterTypeImpl _typeParameterType(TypeParameterElement2 element) {
1234+
return TypeParameterTypeImpl.v2(
12281235
element: element,
12291236
nullabilitySuffix: NullabilitySuffix.none,
12301237
);

0 commit comments

Comments
 (0)