Skip to content

Commit 2d83ca1

Browse files
johnniwintherCommit Queue
authored andcommitted
[cfe] Remove SourceFunctionBuilderImpl and merge SourceFactoryBuilder and RedirectingFactoryBuilder
This is in preparation for creating factories through fragments. Change-Id: Ia9589d16468c647a1bf3236bcb75133f96fcfac3 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/405781 Reviewed-by: Chloe Stefantsova <[email protected]> Commit-Queue: Johnni Winther <[email protected]>
1 parent c550de7 commit 2d83ca1

12 files changed

+886
-685
lines changed

pkg/front_end/lib/src/fragment/getter.dart

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -450,7 +450,6 @@ mixin _DirectGetterEncodingMixin implements _GetterEncoding {
450450
}
451451

452452
@override
453-
// Coverage-ignore(suite): Not run.
454453
List<NominalParameterBuilder>? get clonedAndDeclaredTypeParameters =>
455454
_fragment.declaredTypeParameters;
456455

@@ -742,7 +741,6 @@ mixin _ExtensionInstanceGetterEncodingMixin implements _GetterEncoding {
742741
}
743742

744743
@override
745-
// Coverage-ignore(suite): Not run.
746744
List<NominalParameterBuilder>? get clonedAndDeclaredTypeParameters =>
747745
_clonedDeclarationTypeParameters != null ||
748746
_fragment.declaredTypeParameters != null

pkg/front_end/lib/src/fragment/method.dart

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -575,7 +575,6 @@ mixin _DirectMethodEncodingMixin implements _MethodEncoding {
575575
}
576576

577577
@override
578-
// Coverage-ignore(suite): Not run.
579578
List<NominalParameterBuilder>? get clonedAndDeclaredTypeParameters =>
580579
_fragment.declaredTypeParameters;
581580

@@ -1093,7 +1092,6 @@ mixin _ExtensionInstanceMethodEncodingMixin implements _MethodEncoding {
10931092
}
10941093

10951094
@override
1096-
// Coverage-ignore(suite): Not run.
10971095
List<NominalParameterBuilder>? get clonedAndDeclaredTypeParameters =>
10981096
_clonedDeclarationTypeParameters != null ||
10991097
_fragment.declaredTypeParameters != null

pkg/front_end/lib/src/fragment/setter.dart

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -455,7 +455,6 @@ mixin _DirectSetterEncodingMixin implements _SetterEncoding {
455455
}
456456

457457
@override
458-
// Coverage-ignore(suite): Not run.
459458
List<NominalParameterBuilder>? get clonedAndDeclaredTypeParameters =>
460459
_fragment.declaredTypeParameters;
461460

@@ -759,7 +758,6 @@ mixin _ExtensionInstanceSetterEncodingMixin implements _SetterEncoding {
759758
_fragment.declaredFormals![index].variable!;
760759

761760
@override
762-
// Coverage-ignore(suite): Not run.
763761
List<NominalParameterBuilder>? get clonedAndDeclaredTypeParameters =>
764762
_clonedDeclarationTypeParameters != null ||
765763
_fragment.declaredTypeParameters != null

pkg/front_end/lib/src/kernel/body_builder_context.dart

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -943,10 +943,10 @@ class FactoryBodyBuilderContext extends BodyBuilderContext
943943

944944
class RedirectingFactoryBodyBuilderContext extends BodyBuilderContext
945945
with
946-
_MemberBodyBuilderContext<RedirectingFactoryBuilder>,
947-
_FunctionBodyBuilderContextMixin<RedirectingFactoryBuilder> {
946+
_MemberBodyBuilderContext<SourceFactoryBuilder>,
947+
_FunctionBodyBuilderContextMixin<SourceFactoryBuilder> {
948948
@override
949-
final RedirectingFactoryBuilder _member;
949+
final SourceFactoryBuilder _member;
950950

951951
@override
952952
final Member _builtMember;
@@ -960,7 +960,7 @@ class RedirectingFactoryBodyBuilderContext extends BodyBuilderContext
960960

961961
@override
962962
String get redirectingFactoryTargetName {
963-
return _member.redirectionTarget.fullNameForErrors;
963+
return _member.redirectionTarget!.fullNameForErrors;
964964
}
965965
}
966966

pkg/front_end/lib/src/source/class_declaration.dart

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -106,11 +106,12 @@ mixin ClassDeclarationMixin implements ClassDeclaration {
106106
unexpected("$fileUri", "${declaration.declarationBuilder!.fileUri}",
107107
fileOffset, fileUri);
108108
}
109-
if (declaration is RedirectingFactoryBuilder) {
109+
if (declaration is SourceFactoryBuilder &&
110+
declaration.redirectionTarget != null) {
110111
// Compute the immediate redirection target, not the effective.
111112

112113
ConstructorReferenceBuilder redirectionTarget =
113-
declaration.redirectionTarget;
114+
declaration.redirectionTarget!;
114115
List<TypeBuilder>? typeArguments = redirectionTarget.typeArguments;
115116
Builder? target = redirectionTarget.target;
116117
if (typeArguments != null && target is MemberBuilder) {
@@ -192,7 +193,8 @@ mixin ClassDeclarationMixin implements ClassDeclaration {
192193
targetNode = null;
193194
}
194195
if (targetNode != null) {
195-
List<DartType>? typeArguments = declaration.typeArguments;
196+
List<DartType>? typeArguments =
197+
declaration.redirectionTypeArguments;
196198
if (typeArguments == null) {
197199
int typeArgumentCount;
198200
if (targetBuilder!.isExtensionTypeMember) {

0 commit comments

Comments
 (0)