Skip to content

Commit dd2b04e

Browse files
johnniwinthercommit-bot@chromium.org
authored andcommitted
[cfe] Migrate front_end libraries from wave 3-4
Change-Id: I026ace4fd2563ec26439f630074eb35900839529 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195268 Reviewed-by: Dmitry Stefantsov <[email protected]> Commit-Queue: Johnni Winther <[email protected]>
1 parent 9feb533 commit dd2b04e

File tree

7 files changed

+41
-59
lines changed

7 files changed

+41
-59
lines changed

pkg/front_end/lib/src/fasta/kernel/expression_generator.dart

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -927,13 +927,12 @@ class SuperPropertyAccessGenerator extends Generator {
927927

928928
@override
929929
void printOn(StringSink sink) {
930-
NameSystem syntheticNames = new NameSystem();
931930
sink.write(", name: ");
932931
sink.write(name.text);
933932
sink.write(", getter: ");
934-
printQualifiedNameOn(getter, sink, syntheticNames: syntheticNames);
933+
printQualifiedNameOn(getter, sink);
935934
sink.write(", setter: ");
936-
printQualifiedNameOn(setter, sink, syntheticNames: syntheticNames);
935+
printQualifiedNameOn(setter, sink);
937936
}
938937
}
939938

@@ -1303,9 +1302,9 @@ class SuperIndexedAccessGenerator extends Generator {
13031302
sink.write(", index: ");
13041303
printNodeOn(index, sink, syntheticNames: syntheticNames);
13051304
sink.write(", getter: ");
1306-
printQualifiedNameOn(getter, sink, syntheticNames: syntheticNames);
1305+
printQualifiedNameOn(getter, sink);
13071306
sink.write(", setter: ");
1308-
printQualifiedNameOn(setter, sink, syntheticNames: syntheticNames);
1307+
printQualifiedNameOn(setter, sink);
13091308
}
13101309
}
13111310

@@ -1503,13 +1502,12 @@ class StaticAccessGenerator extends Generator {
15031502

15041503
@override
15051504
void printOn(StringSink sink) {
1506-
NameSystem syntheticNames = new NameSystem();
15071505
sink.write(", targetName: ");
15081506
sink.write(targetName);
15091507
sink.write(", readTarget: ");
1510-
printQualifiedNameOn(readTarget, sink, syntheticNames: syntheticNames);
1508+
printQualifiedNameOn(readTarget, sink);
15111509
sink.write(", writeTarget: ");
1512-
printQualifiedNameOn(writeTarget, sink, syntheticNames: syntheticNames);
1510+
printQualifiedNameOn(writeTarget, sink);
15131511
}
15141512
}
15151513

@@ -1777,13 +1775,12 @@ class ExtensionInstanceAccessGenerator extends Generator {
17771775

17781776
@override
17791777
void printOn(StringSink sink) {
1780-
NameSystem syntheticNames = new NameSystem();
17811778
sink.write(", targetName: ");
17821779
sink.write(targetName);
17831780
sink.write(", readTarget: ");
1784-
printQualifiedNameOn(readTarget, sink, syntheticNames: syntheticNames);
1781+
printQualifiedNameOn(readTarget, sink);
17851782
sink.write(", writeTarget: ");
1786-
printQualifiedNameOn(writeTarget, sink, syntheticNames: syntheticNames);
1783+
printQualifiedNameOn(writeTarget, sink);
17871784
}
17881785
}
17891786

@@ -2192,13 +2189,12 @@ class ExplicitExtensionInstanceAccessGenerator extends Generator {
21922189

21932190
@override
21942191
void printOn(StringSink sink) {
2195-
NameSystem syntheticNames = new NameSystem();
21962192
sink.write(", targetName: ");
21972193
sink.write(targetName);
21982194
sink.write(", readTarget: ");
2199-
printQualifiedNameOn(readTarget, sink, syntheticNames: syntheticNames);
2195+
printQualifiedNameOn(readTarget, sink);
22002196
sink.write(", writeTarget: ");
2201-
printQualifiedNameOn(writeTarget, sink, syntheticNames: syntheticNames);
2197+
printQualifiedNameOn(writeTarget, sink);
22022198
}
22032199
}
22042200

@@ -2475,9 +2471,9 @@ class ExplicitExtensionIndexedAccessGenerator extends Generator {
24752471
sink.write(", index: ");
24762472
printNodeOn(index, sink, syntheticNames: syntheticNames);
24772473
sink.write(", readTarget: ");
2478-
printQualifiedNameOn(readTarget, sink, syntheticNames: syntheticNames);
2474+
printQualifiedNameOn(readTarget, sink);
24792475
sink.write(", writeTarget: ");
2480-
printQualifiedNameOn(writeTarget, sink, syntheticNames: syntheticNames);
2476+
printQualifiedNameOn(writeTarget, sink);
24812477
}
24822478
}
24832479

pkg/front_end/lib/src/fasta/kernel/invalid_type.dart

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
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.md file.
44

5-
// @dart = 2.9
6-
75
import 'package:kernel/ast.dart';
86

97
import '../type_inference/type_schema.dart';
@@ -81,7 +79,7 @@ class _InvalidTypeFinder implements DartTypeVisitor1<bool, Set<TypedefType>> {
8179
bool visitFunctionType(FunctionType node, Set<TypedefType> visitedTypedefs) {
8280
if (node.returnType.accept1(this, visitedTypedefs)) return true;
8381
for (TypeParameter typeParameter in node.typeParameters) {
84-
if (typeParameter.bound.accept1(this, visitedTypedefs)) return true;
82+
if (typeParameter.bound!.accept1(this, visitedTypedefs)) return true;
8583
// TODO(dmitryas): Check defaultTypes as well if they cause cascading
8684
// errors.
8785
}
@@ -91,8 +89,8 @@ class _InvalidTypeFinder implements DartTypeVisitor1<bool, Set<TypedefType>> {
9189
for (NamedType parameter in node.namedParameters) {
9290
if (parameter.type.accept1(this, visitedTypedefs)) return true;
9391
}
94-
if (node.typedefType != null && visitedTypedefs.add(node.typedefType)) {
95-
if (node.typedefType.accept1(this, visitedTypedefs)) return true;
92+
if (node.typedefType != null && visitedTypedefs.add(node.typedefType!)) {
93+
if (node.typedefType!.accept1(this, visitedTypedefs)) return true;
9694
}
9795
return false;
9896
}
@@ -105,7 +103,7 @@ class _InvalidTypeFinder implements DartTypeVisitor1<bool, Set<TypedefType>> {
105103
for (DartType typeArgument in node.typeArguments) {
106104
if (typeArgument.accept1(this, visitedTypedefs)) return true;
107105
}
108-
if (node.typedefNode.type.accept1(this, visitedTypedefs)) return true;
106+
if (node.typedefNode.type!.accept1(this, visitedTypedefs)) return true;
109107
return false;
110108
}
111109

@@ -116,7 +114,7 @@ class _InvalidTypeFinder implements DartTypeVisitor1<bool, Set<TypedefType>> {
116114
// automatically means that the potential errors related to the occurrences
117115
// of the type-parameter type itself are reported.
118116
if (node.promotedBound != null &&
119-
node.promotedBound.accept1(this, visitedTypedefs)) {
117+
node.promotedBound!.accept1(this, visitedTypedefs)) {
120118
return true;
121119
}
122120
return false;

pkg/front_end/lib/src/fasta/kernel/kernel_api.dart

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
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-
// @dart = 2.9
6-
75
/// This library exports all API from Kernel that can be used throughout fasta.
86
library fasta.kernel_api;
97

@@ -27,7 +25,7 @@ import 'package:kernel/text/ast_to_text.dart' show NameSystem, Printer;
2725

2826
import 'package:kernel/ast.dart' show Class, Member, Node;
2927

30-
void printNodeOn(Node node, StringSink sink, {NameSystem syntheticNames}) {
28+
void printNodeOn(Node? node, StringSink sink, {NameSystem? syntheticNames}) {
3129
if (node == null) {
3230
sink.write("null");
3331
} else {
@@ -36,19 +34,17 @@ void printNodeOn(Node node, StringSink sink, {NameSystem syntheticNames}) {
3634
}
3735
}
3836

39-
void printQualifiedNameOn(Member member, StringSink sink,
40-
{NameSystem syntheticNames}) {
37+
void printQualifiedNameOn(Member? member, StringSink sink) {
4138
if (member == null) {
4239
sink.write("null");
4340
} else {
44-
syntheticNames ??= new NameSystem();
4541
sink.write(member.enclosingLibrary.importUri);
4642
sink.write("::");
47-
Class cls = member.enclosingClass;
43+
Class? cls = member.enclosingClass;
4844
if (cls != null) {
49-
sink.write(cls.name ?? syntheticNames.nameClass(cls));
45+
sink.write(cls.name);
5046
sink.write("::");
5147
}
52-
sink.write(member.name?.text ?? syntheticNames.nameMember(member));
48+
sink.write(member.name.text);
5349
}
5450
}

pkg/front_end/lib/src/fasta/kernel/utils.dart

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
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-
// @dart = 2.9
6-
75
import 'dart:io' show BytesBuilder, File, IOSink;
86

97
import 'dart:typed_data' show Uint8List;
@@ -29,8 +27,8 @@ import 'package:kernel/text/ast_to_text.dart' show Printer;
2927
/// Print the given [component]. Do nothing if it is `null`. If the
3028
/// [libraryFilter] is provided, then only libraries that satisfy it are
3129
/// printed.
32-
void printComponentText(Component component,
33-
{bool libraryFilter(Library library)}) {
30+
void printComponentText(Component? component,
31+
{bool Function(Library library)? libraryFilter}) {
3432
if (component == null) return;
3533
StringBuffer sb = new StringBuffer();
3634
Printer printer = new Printer(sb);
@@ -45,7 +43,7 @@ void printComponentText(Component component,
4543

4644
/// Write [component] to file only including libraries that match [filter].
4745
Future<Null> writeComponentToFile(Component component, Uri uri,
48-
{bool filter(Library library)}) async {
46+
{bool Function(Library library)? filter}) async {
4947
File output = new File.fromUri(uri);
5048
IOSink sink = output.openWrite();
5149
try {
@@ -58,7 +56,7 @@ Future<Null> writeComponentToFile(Component component, Uri uri,
5856

5957
/// Serialize the libraries in [component] that match [filter].
6058
Uint8List serializeComponent(Component component,
61-
{bool filter(Library library),
59+
{bool Function(Library library)? filter,
6260
bool includeSources: true,
6361
bool includeOffsets: true}) {
6462
ByteSink byteSink = new ByteSink();
@@ -81,9 +79,8 @@ Component createExpressionEvaluationComponent(Procedure procedure) {
8179
..nonNullableByDefaultCompiledMode =
8280
realLibrary.nonNullableByDefaultCompiledMode;
8381

84-
if (procedure.parent is Class) {
85-
Class realClass = procedure.parent;
86-
82+
TreeNode? realClass = procedure.parent;
83+
if (realClass is Class) {
8784
Class fakeClass = new Class(name: kDebugClassName)..parent = fakeLibrary;
8885
Map<TypeParameter, TypeParameter> typeParams =
8986
<TypeParameter, TypeParameter>{};
@@ -99,14 +96,15 @@ Component createExpressionEvaluationComponent(Procedure procedure) {
9996
typeSubstitution: typeSubstitution, typeParams: typeParams);
10097

10198
for (TypeParameter typeParam in realClass.typeParameters) {
102-
fakeClass.typeParameters.add(typeParam.accept<TreeNode>(cloner));
99+
fakeClass.typeParameters
100+
.add(typeParam.accept<TreeNode>(cloner) as TypeParameter);
103101
}
104102

105103
if (realClass.supertype != null) {
106104
// supertype is null for Object.
107105
fakeClass.supertype = new Supertype.byReference(
108-
realClass.supertype.className,
109-
realClass.supertype.typeArguments.map(cloner.visitType).toList());
106+
realClass.supertype!.className,
107+
realClass.supertype!.typeArguments.map(cloner.visitType).toList());
110108
}
111109

112110
// Rebind the type parameters in the procedure.

pkg/front_end/lib/src/fasta/type_inference/standard_bounds.dart

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
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.md file.
44

5-
// @dart = 2.9
6-
75
import 'package:kernel/ast.dart' show DartType, Library, NeverType;
86

97
import 'package:kernel/src/standard_bounds.dart';

pkg/front_end/lib/src/fasta/type_inference/type_schema.dart

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
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.md file.
44

5-
// @dart = 2.9
6-
75
import 'package:kernel/ast.dart'
86
show
97
DartType,
@@ -38,10 +36,10 @@ String typeSchemaToString(DartType schema) {
3836
/// Extension of [Printer] that represents the unknown type as `?`.
3937
class TypeSchemaPrinter extends Printer {
4038
TypeSchemaPrinter(StringSink sink,
41-
{NameSystem syntheticNames,
39+
{NameSystem? syntheticNames,
4240
bool showOffsets: false,
43-
ImportTable importTable,
44-
Annotator annotator})
41+
ImportTable? importTable,
42+
Annotator? annotator})
4543
: super(sink,
4644
syntheticNames: syntheticNames,
4745
showOffsets: showOffsets,
@@ -64,16 +62,16 @@ class UnknownType extends DartType {
6462
const UnknownType();
6563

6664
@override
67-
Nullability get declaredNullability => null;
65+
Nullability get declaredNullability => Nullability.undetermined;
6866

6967
@override
70-
Nullability get nullability => null;
68+
Nullability get nullability => Nullability.undetermined;
7169

7270
@override
7371
bool operator ==(Object other) => equals(other, null);
7472

7573
@override
76-
bool equals(Object other, Assumptions assumptions) {
74+
bool equals(Object other, Assumptions? assumptions) {
7775
// This class doesn't have any fields so all instances of `UnknownType` are
7876
// equal.
7977
return other is UnknownType;
@@ -124,7 +122,7 @@ class _IsKnownVisitor extends DartTypeVisitor<bool> {
124122
for (NamedType namedParameterType in node.namedParameters) {
125123
if (!namedParameterType.type.accept(this)) return false;
126124
}
127-
if (node.typedefType != null && !node.typedefType.accept(this)) {
125+
if (node.typedefType != null && !node.typedefType!.accept(this)) {
128126
return false;
129127
}
130128
return true;

pkg/front_end/lib/src/fasta/type_inference/type_schema_elimination.dart

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
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.md file.
44

5-
// @dart = 2.9
6-
75
import 'package:kernel/ast.dart';
86
import 'package:kernel/src/replacement_visitor.dart';
97

@@ -56,7 +54,7 @@ class _TypeSchemaEliminationVisitor extends ReplacementVisitor {
5654
_TypeSchemaEliminationVisitor(this.topType, this.bottomType);
5755

5856
@override
59-
DartType defaultDartType(DartType node, int variance) {
57+
DartType? defaultDartType(DartType node, int variance) {
6058
bool isLeastClosure = variance == Variance.covariant;
6159
if (node is UnknownType) {
6260
return isLeastClosure ? bottomType : topType;
@@ -79,7 +77,7 @@ class _TypeSchemaEliminationVisitor extends ReplacementVisitor {
7977
bottomType == const NeverType.nonNullable() || bottomType is NullType);
8078
_TypeSchemaEliminationVisitor visitor =
8179
new _TypeSchemaEliminationVisitor(topType, bottomType);
82-
DartType result = schema.accept1(
80+
DartType? result = schema.accept1(
8381
visitor, isLeastClosure ? Variance.covariant : Variance.contravariant);
8482
return result ?? schema;
8583
}

0 commit comments

Comments
 (0)