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

Commit 5b32ab3

Browse files
Remove the word "strongMode" from some package:kernel libraries.
Temporarily using "legacyMode" instead, but I plan to rid these soon. Change-Id: Iff8bcde03b6ebe4ad95f963f456c855e73e58926 Reviewed-on: https://dart-review.googlesource.com/c/79042 Auto-Submit: Peter von der Ahé <ahe@google.com> Reviewed-by: Jens Johansen <jensj@google.com>
1 parent dfb8e97 commit 5b32ab3

13 files changed

Lines changed: 49 additions & 53 deletions

pkg/dev_compiler/lib/src/kernel/constants.dart

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -182,8 +182,9 @@ class _ConstantEvaluator extends ConstantEvaluator {
182182
_ConstantEvaluator(TypeEnvironment types, this.declaredVariables,
183183
{bool enableAsserts})
184184
: unavailableConstant = InstanceConstant(null, [], {}),
185-
super(_ConstantsBackend(types.coreTypes), types, types.coreTypes, true,
186-
enableAsserts, const _ErrorReporter()) {
185+
super(_ConstantsBackend(types.coreTypes), types, types.coreTypes,
186+
enableAsserts,
187+
errorReporter: const _ErrorReporter()) {
187188
env = EvaluationEnvironment();
188189
}
189190

pkg/kernel/bin/transform.dart

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,11 +101,12 @@ Future<CompilerOutcome> runTransformation(List<String> arguments) async {
101101
final Map<String, String> defines = null;
102102
final VmConstantsBackend backend =
103103
new VmConstantsBackend(defines, coreTypes);
104-
component = constants.transformComponent(component, backend);
104+
component =
105+
constants.transformComponent(component, backend, legacyMode: true);
105106
break;
106107
case 'treeshake':
107108
component = treeshaker.transformComponent(coreTypes, hierarchy, component,
108-
programRoots: programRoots);
109+
programRoots: programRoots, legacyMode: true);
109110
break;
110111
case 'methodcall':
111112
component =

pkg/kernel/lib/naive_type_checker.dart

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ class StrongModeTypeChecker extends type_checker.TypeChecker {
3131

3232
StrongModeTypeChecker._(this.failures, CoreTypes coreTypes,
3333
ClassHierarchy hierarchy, bool ignoreSdk)
34-
: super(coreTypes, hierarchy, strongMode: true, ignoreSdk: ignoreSdk);
34+
: super(coreTypes, hierarchy, ignoreSdk: ignoreSdk);
3535

3636
// TODO(vegorov) this only gets called for immediate overrides which leads
3737
// to less strict checking that Dart 2.0 specification demands for covariant
@@ -164,8 +164,7 @@ ${ownType} is not a subtype of ${superType}
164164

165165
if (!_isSubtypeOf(ownSubstitution.substituteType(ownFunction.returnType),
166166
superSubstitution.substituteType(superFunction.returnType))) {
167-
return 'return type of override ${ownFunction
168-
.returnType} is not a subtype'
167+
return 'return type of override ${ownFunction.returnType} is not a subtype'
169168
' of ${superFunction.returnType}';
170169
}
171170

pkg/kernel/lib/transformations/constants.dart

Lines changed: 17 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ import '../type_environment.dart';
3030

3131
Component transformComponent(Component component, ConstantsBackend backend,
3232
{bool keepFields: false,
33-
bool strongMode: false,
33+
bool legacyMode: false,
3434
bool enableAsserts: false,
3535
bool evaluateAnnotations: true,
3636
CoreTypes coreTypes,
@@ -40,11 +40,11 @@ Component transformComponent(Component component, ConstantsBackend backend,
4040
hierarchy ??= new ClassHierarchy(component);
4141

4242
final typeEnvironment =
43-
new TypeEnvironment(coreTypes, hierarchy, strongMode: strongMode);
43+
new TypeEnvironment(coreTypes, hierarchy, strongMode: !legacyMode);
4444

4545
transformLibraries(component.libraries, backend, coreTypes, typeEnvironment,
4646
keepFields: keepFields,
47-
strongMode: strongMode,
47+
legacyMode: legacyMode,
4848
enableAsserts: enableAsserts,
4949
evaluateAnnotations: evaluateAnnotations,
5050
errorReporter: errorReporter);
@@ -54,9 +54,9 @@ Component transformComponent(Component component, ConstantsBackend backend,
5454
void transformLibraries(List<Library> libraries, ConstantsBackend backend,
5555
CoreTypes coreTypes, TypeEnvironment typeEnvironment,
5656
{bool keepFields: false,
57+
bool legacyMode: false,
5758
bool keepVariables: false,
5859
bool evaluateAnnotations: true,
59-
bool strongMode: false,
6060
bool enableAsserts: false,
6161
ErrorReporter errorReporter: const _SimpleErrorReporter()}) {
6262
final ConstantsTransformer constantsTransformer = new ConstantsTransformer(
@@ -66,9 +66,9 @@ void transformLibraries(List<Library> libraries, ConstantsBackend backend,
6666
evaluateAnnotations,
6767
coreTypes,
6868
typeEnvironment,
69-
strongMode,
7069
enableAsserts,
71-
errorReporter);
70+
errorReporter,
71+
legacyMode: legacyMode);
7272
for (final Library library in libraries) {
7373
constantsTransformer.convertLibrary(library);
7474
}
@@ -91,11 +91,12 @@ class ConstantsTransformer extends Transformer {
9191
this.evaluateAnnotations,
9292
this.coreTypes,
9393
this.typeEnvironment,
94-
bool strongMode,
9594
bool enableAsserts,
96-
ErrorReporter errorReporter)
97-
: constantEvaluator = new ConstantEvaluator(backend, typeEnvironment,
98-
coreTypes, strongMode, enableAsserts, errorReporter);
95+
ErrorReporter errorReporter,
96+
{bool legacyMode: false})
97+
: constantEvaluator = new ConstantEvaluator(
98+
backend, typeEnvironment, coreTypes, enableAsserts,
99+
legacyMode: legacyMode, errorReporter: errorReporter);
99100

100101
// Transform the library/class members:
101102

@@ -362,7 +363,7 @@ class ConstantEvaluator extends RecursiveVisitor {
362363
final ConstantsBackend backend;
363364
final CoreTypes coreTypes;
364365
final TypeEnvironment typeEnvironment;
365-
final bool strongMode;
366+
final bool legacyMode;
366367
final bool enableAsserts;
367368
final ErrorReporter errorReporter;
368369

@@ -378,9 +379,10 @@ class ConstantEvaluator extends RecursiveVisitor {
378379
InstanceBuilder instanceBuilder;
379380
EvaluationEnvironment env;
380381

381-
ConstantEvaluator(this.backend, this.typeEnvironment, this.coreTypes,
382-
this.strongMode, this.enableAsserts,
383-
[this.errorReporter = const _SimpleErrorReporter()])
382+
ConstantEvaluator(
383+
this.backend, this.typeEnvironment, this.coreTypes, this.enableAsserts,
384+
{this.legacyMode: false,
385+
this.errorReporter = const _SimpleErrorReporter()})
384386
: canonicalizationCache = <Constant, Constant>{},
385387
nodeCache = <Node, Constant>{};
386388

@@ -1195,7 +1197,7 @@ class ConstantEvaluator extends RecursiveVisitor {
11951197
}
11961198

11971199
int _wrapAroundInteger(int value) {
1198-
if (strongMode) {
1200+
if (!legacyMode) {
11991201
return value.toSigned(64);
12001202
}
12011203
return value;

pkg/kernel/lib/transformations/treeshaker.dart

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ import '../library_index.dart';
1212

1313
Component transformComponent(
1414
CoreTypes coreTypes, ClassHierarchy hierarchy, Component component,
15-
{List<ProgramRoot> programRoots, bool strongMode: false}) {
15+
{List<ProgramRoot> programRoots, bool legacyMode: false}) {
1616
new TreeShaker(coreTypes, hierarchy, component,
17-
programRoots: programRoots, strongMode: strongMode)
17+
programRoots: programRoots, legacyMode: legacyMode)
1818
.transform(component);
1919
return component;
2020
}
@@ -98,7 +98,7 @@ class TreeShaker {
9898
final Map<Class, int> numberedClasses;
9999
final List<Class> classes;
100100
final Component component;
101-
final bool strongMode;
101+
final bool legacyMode;
102102
final List<ProgramRoot> programRoots;
103103

104104
/// Map from classes to set of names that have been dispatched with that class
@@ -179,9 +179,9 @@ class TreeShaker {
179179
bool get forceShaking => programRoots != null && programRoots.isNotEmpty;
180180

181181
TreeShaker(CoreTypes coreTypes, ClassHierarchy hierarchy, Component component,
182-
{bool strongMode: false, List<ProgramRoot> programRoots})
182+
{List<ProgramRoot> programRoots, bool legacyMode: false})
183183
: this._internal(
184-
coreTypes, hierarchy, component, strongMode, programRoots);
184+
coreTypes, hierarchy, component, legacyMode, programRoots);
185185

186186
bool isMemberBodyUsed(Member member) {
187187
return _usedMembers.containsKey(member);
@@ -229,7 +229,7 @@ class TreeShaker {
229229
}
230230

231231
TreeShaker._internal(this.coreTypes, this.hierarchy, this.component,
232-
this.strongMode, this.programRoots)
232+
this.legacyMode, this.programRoots)
233233
: this._dispatchedNames = new List<Set<Name>>(hierarchy.numberOfClasses),
234234
this._usedMembersWithHost =
235235
new List<Set<Member>>(hierarchy.numberOfClasses),
@@ -284,7 +284,7 @@ class TreeShaker {
284284

285285
// Mark overridden members in order to preserve abstract members as
286286
// necessary.
287-
if (strongMode) {
287+
if (!legacyMode) {
288288
for (int i = classes.length - 1; i >= 0; --i) {
289289
Class class_ = classes[i];
290290
if (isHierarchyUsed(class_)) {
@@ -669,7 +669,7 @@ class _TreeShakerVisitor extends RecursiveVisitor {
669669
_TreeShakerVisitor(TreeShaker shaker)
670670
: this.shaker = shaker,
671671
this.coreTypes = shaker.coreTypes,
672-
this.strongMode = shaker.strongMode,
672+
this.strongMode = !shaker.legacyMode,
673673
this.types = new TypeEnvironment(shaker.coreTypes, shaker.hierarchy) {
674674
types.errorHandler = handleError;
675675
}

pkg/kernel/lib/type_checker.dart

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,9 @@ abstract class TypeChecker {
2020
TypeEnvironment environment;
2121

2222
TypeChecker(this.coreTypes, this.hierarchy,
23-
{bool strongMode: false, this.ignoreSdk: true}) {
24-
environment =
25-
new TypeEnvironment(coreTypes, hierarchy, strongMode: strongMode);
26-
}
23+
{bool legacyMode: false, this.ignoreSdk: true})
24+
: environment =
25+
new TypeEnvironment(coreTypes, hierarchy, strongMode: !legacyMode);
2726

2827
void checkComponent(Component component) {
2928
for (var library in component.libraries) {
@@ -819,17 +818,15 @@ class TypeCheckingVisitor
819818
if (iteratorGetter == null) return const DynamicType();
820819
var castedIterable = hierarchy.getTypeAsInstanceOf(
821820
iterable, iteratorGetter.enclosingClass);
822-
var iteratorType = Substitution
823-
.fromInterfaceType(castedIterable)
821+
var iteratorType = Substitution.fromInterfaceType(castedIterable)
824822
.substituteType(iteratorGetter.getterType);
825823
if (iteratorType is InterfaceType) {
826824
var currentGetter =
827825
hierarchy.getInterfaceMember(iteratorType.classNode, currentName);
828826
if (currentGetter == null) return const DynamicType();
829827
var castedIteratorType = hierarchy.getTypeAsInstanceOf(
830828
iteratorType, currentGetter.enclosingClass);
831-
return Substitution
832-
.fromInterfaceType(castedIteratorType)
829+
return Substitution.fromInterfaceType(castedIteratorType)
833830
.substituteType(currentGetter.getterType);
834831
}
835832
}

pkg/kernel/test/treeshaker_bench.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ void main(List<String> args) {
5959
ClassHierarchy sharedClassHierarchy = buildClassHierarchy();
6060
int coldHierarchyTime = watch.elapsedMicroseconds;
6161
var shaker = new TreeShaker(coreTypes, sharedClassHierarchy, component,
62-
strongMode: strongMode);
62+
legacyMode: !strongMode);
6363
if (options['diagnose']) {
6464
print(shaker.getDiagnosticString());
6565
}
@@ -80,7 +80,7 @@ void main(List<String> args) {
8080
watch.reset();
8181
var hierarchy = getClassHierarchy();
8282
hotHierarchyTime += watch.elapsedMicroseconds;
83-
new TreeShaker(coreTypes, hierarchy, component, strongMode: strongMode);
83+
new TreeShaker(coreTypes, hierarchy, component, legacyMode: !strongMode);
8484
hotTreeShakingTime += watch.elapsedMicroseconds;
8585
}
8686
hotHierarchyTime ~/= numberOfTrials;

pkg/kernel/test/treeshaker_check.dart

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@ main(List<String> args) {
2424
var component = loadComponentFromBinary(args[0]);
2525
var coreTypes = new CoreTypes(component);
2626
var hierarchy = new ClassHierarchy(component);
27-
var shaker = new TreeShaker(coreTypes, hierarchy, component);
27+
var shaker =
28+
new TreeShaker(coreTypes, hierarchy, component, legacyMode: true);
2829
shaker.transform(component);
2930
new TreeShakingSanityCheck(shaker).visit(component);
3031
}

pkg/kernel/test/treeshaker_dump.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ main(List<String> args) {
6969
CoreTypes coreTypes = new CoreTypes(component);
7070
ClassHierarchy hierarchy = new ClassHierarchy(component);
7171
TreeShaker shaker =
72-
new TreeShaker(coreTypes, hierarchy, component, strongMode: strong);
72+
new TreeShaker(coreTypes, hierarchy, component, legacyMode: !strong);
7373
int totalClasses = 0;
7474
int totalInstantiationCandidates = 0;
7575
int totalMembers = 0;
@@ -132,7 +132,7 @@ main(List<String> args) {
132132
StringBuffer before = new StringBuffer();
133133
new Printer(before, syntheticNames: names).writeComponentFile(component);
134134
new File(beforeFile).writeAsStringSync('$before');
135-
new TreeShaker(coreTypes, hierarchy, component, strongMode: strong)
135+
new TreeShaker(coreTypes, hierarchy, component, legacyMode: !strong)
136136
.transform(component);
137137
StringBuffer after = new StringBuffer();
138138
new Printer(after, syntheticNames: names).writeComponentFile(component);

pkg/kernel/test/treeshaker_membench.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ main(List<String> args) {
4646

4747
TreeShaker buildTreeShaker() {
4848
return new TreeShaker(coreTypes, hierarchy, component,
49-
strongMode: strongMode);
49+
legacyMode: !strongMode);
5050
}
5151

5252
List<TreeShaker> keepAlive = <TreeShaker>[];

0 commit comments

Comments
 (0)