| Index: sdk/lib/_internal/compiler/implementation/js_emitter/old_emitter/emitter.dart
|
| diff --git a/sdk/lib/_internal/compiler/implementation/js_emitter/old_emitter/emitter.dart b/sdk/lib/_internal/compiler/implementation/js_emitter/old_emitter/emitter.dart
|
| index 6c266153502120b97a67edcb207ad9877eaddfc2..0befabcef20bfefab5c8dea29d01130114a98809 100644
|
| --- a/sdk/lib/_internal/compiler/implementation/js_emitter/old_emitter/emitter.dart
|
| +++ b/sdk/lib/_internal/compiler/implementation/js_emitter/old_emitter/emitter.dart
|
| @@ -350,10 +350,10 @@ class OldEmitter implements Emitter {
|
| return js('''
|
| function(collectedClasses, isolateProperties, existingIsolateProperties) {
|
| var pendingClasses = Object.create(null);
|
| - if (!#) # = Object.create(null); // embedded allClasses.
|
| - var allClasses = #; // embedded allClasses;
|
| + if (!#allClasses) #allClasses = Object.create(null);
|
| + var allClasses = #allClasses;
|
|
|
| - if (#) // DEBUG_FAST_OBJECTS
|
| + if (#debugFastObjects) // DEBUG_FAST_OBJECTS
|
| print("Number of classes: " +
|
| Object.getOwnPropertyNames(\$\$).length);
|
|
|
| @@ -383,7 +383,7 @@ class OldEmitter implements Emitter {
|
| */
|
| var classData = desc["${namer.classDescriptorProperty}"],
|
| supr, name = cls, fields = classData;
|
| - if (#) // backend.hasRetainedMetadata
|
| + if (#hasRetainedMetadata)
|
| if (typeof classData == "object" &&
|
| classData instanceof Array) {
|
| classData = fields = classData[0];
|
| @@ -405,11 +405,11 @@ class OldEmitter implements Emitter {
|
| var functionSignature = split[1];
|
| if (functionSignature)
|
| desc.\$signature = (function(s) {
|
| - return function(){ return #[s]; }; // embedded metadata.
|
| + return function(){ return #metadata[s]; };
|
| })(functionSignature);
|
| }
|
|
|
| - if (#) // needsMixinSupport
|
| + if (#needsMixinSupport)
|
| if (supr && supr.indexOf("+") > 0) {
|
| s = supr.split("+");
|
| supr = s[0];
|
| @@ -447,7 +447,7 @@ class OldEmitter implements Emitter {
|
| globalObject = desc[0] || isolateProperties;
|
| desc = desc[1];
|
| }
|
| - if (#) //backend.isTreeShakingDisabled,
|
| + if (#isTreeShakingDisabled)
|
| constructor["${namer.metadataField}"] = desc;
|
| allClasses[cls] = constructor;
|
| globalObject[cls] = constructor;
|
| @@ -456,26 +456,24 @@ class OldEmitter implements Emitter {
|
| constructors = null;
|
|
|
| var finishedClasses = Object.create(null);
|
| - # = Object.create(null); // embedded interceptorsByTag.
|
| - # = Object.create(null); // embedded leafTags.
|
| + #interceptorsByTag = Object.create(null);
|
| + #leafTags = Object.create(null); // embedded leafTags.
|
|
|
| - #; // buildFinishClass(),
|
| + #finishClassCall;
|
|
|
| - #; // buildTrivialNsmHandlers()
|
| + #trivialNsmHandlers;
|
|
|
| for (var cls in pendingClasses) finishClass(cls);
|
| - }''', [
|
| - allClassesAccess, allClassesAccess,
|
| - allClassesAccess,
|
| - DEBUG_FAST_OBJECTS,
|
| - backend.hasRetainedMetadata,
|
| - metadataAccess,
|
| - needsMixinSupport,
|
| - backend.isTreeShakingDisabled,
|
| - interceptorsByTagAccess,
|
| - leafTagsAccess,
|
| - buildFinishClass(),
|
| - nsmEmitter.buildTrivialNsmHandlers()]);
|
| + }''', { 'allClasses': allClassesAccess,
|
| + 'debugFastObjects': DEBUG_FAST_OBJECTS,
|
| + 'hasRetainedMetadata': backend.hasRetainedMetadata,
|
| + 'metadata': metadataAccess,
|
| + 'needsMixinSupport': needsMixinSupport,
|
| + 'isTreeShakingDisabled': backend.isTreeShakingDisabled,
|
| + 'interceptorsByTag': interceptorsByTagAccess,
|
| + 'leafTags': leafTagsAccess,
|
| + 'finishClassCall': buildFinishClass(),
|
| + 'trivialNsmHandlers': nsmEmitter.buildTrivialNsmHandlers()});
|
| }
|
|
|
| jsAst.Node optional(bool condition, jsAst.Node node) {
|
|
|