Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit c19af8c

Browse files
Dmitry Stefantsovcommit-bot@chromium.org
authored andcommitted
[kernel] Cleanup code for (De)SerializationEnvironment
Change-Id: I751d13014f44bea99733eccdb9665ce4a50da8b2 Reviewed-on: https://dart-review.googlesource.com/c/93222 Reviewed-by: Kevin Millikin <[email protected]>
1 parent d60354b commit c19af8c

File tree

1 file changed

+12
-19
lines changed

1 file changed

+12
-19
lines changed

pkg/kernel/lib/text/serializer_combinators.dart

Lines changed: 12 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -11,19 +11,16 @@ import '../canonical_name.dart' show CanonicalName;
1111
import 'text_serializer.dart' show Tagger;
1212

1313
class DeserializationEnvironment<T extends Node> {
14+
final DeserializationEnvironment<T> parent;
15+
1416
final Map<String, T> locals = <String, T>{};
1517

1618
final Map<String, T> binders = <String, T>{};
1719

18-
final DeserializationEnvironment<T> parent;
19-
20-
final Set<String> usedNames = new Set<String>();
20+
final Set<String> usedNames;
2121

22-
DeserializationEnvironment(this.parent) {
23-
if (parent != null) {
24-
usedNames.addAll(parent.usedNames);
25-
}
26-
}
22+
DeserializationEnvironment(this.parent)
23+
: usedNames = parent?.usedNames?.toSet() ?? new Set<String>();
2724

2825
T lookup(String name) => locals[name] ?? parent?.lookup(name);
2926

@@ -42,27 +39,23 @@ class DeserializationEnvironment<T extends Node> {
4239
}
4340

4441
class SerializationEnvironment<T extends Node> {
42+
final SerializationEnvironment<T> parent;
43+
4544
final Map<T, String> locals = new Map<T, String>.identity();
4645

4746
final Map<T, String> binders = new Map<T, String>.identity();
4847

4948
int nameCount;
5049

51-
final SerializationEnvironment<T> parent;
52-
53-
static const String separator = "^";
54-
55-
static final int codeOfZero = "0".codeUnitAt(0);
56-
57-
static final int codeOfNine = "9".codeUnitAt(0);
58-
59-
SerializationEnvironment(this.parent) {
60-
nameCount = (parent?.nameCount ?? 0);
61-
}
50+
SerializationEnvironment(this.parent) : nameCount = parent?.nameCount ?? 0;
6251

6352
String lookup(T node) => locals[node] ?? parent?.lookup(node);
6453

6554
String addBinder(T node, String name) {
55+
final String separator = "^";
56+
final int codeOfZero = "0".codeUnitAt(0);
57+
final int codeOfNine = "9".codeUnitAt(0);
58+
6659
int prefixLength = name.length - 1;
6760
bool isOnlyDigits = true;
6861
while (prefixLength >= 0 && name[prefixLength] != separator) {

0 commit comments

Comments
 (0)