| Index: pkg/compiler/lib/src/js_emitter/full_emitter/emitter.dart
|
| diff --git a/pkg/compiler/lib/src/js_emitter/full_emitter/emitter.dart b/pkg/compiler/lib/src/js_emitter/full_emitter/emitter.dart
|
| index 07eb81ce5949ada8f4c3d28e6d2485530dcead39..bfd07c65497de6aa2d2b5e97e8f9a6c8f1952990 100644
|
| --- a/pkg/compiler/lib/src/js_emitter/full_emitter/emitter.dart
|
| +++ b/pkg/compiler/lib/src/js_emitter/full_emitter/emitter.dart
|
| @@ -24,6 +24,8 @@ import '../../common/names.dart' show
|
| import '../../compiler.dart' show
|
| Compiler;
|
| import '../../constants/values.dart';
|
| +import '../../core_types.dart' show
|
| + CoreClasses;
|
| import '../../dart_types.dart' show
|
| DartType;
|
| import '../../deferred_load.dart' show OutputUnit;
|
| @@ -131,6 +133,7 @@ class Emitter implements js_emitter.Emitter {
|
| ConstantEmitter constantEmitter;
|
| NativeEmitter get nativeEmitter => task.nativeEmitter;
|
| TypeTestRegistry get typeTestRegistry => task.typeTestRegistry;
|
| + CoreClasses get coreClasses => compiler.coreClasses;
|
|
|
| // The full code that is written to each hunk part-file.
|
| Map<OutputUnit, CodeOutput> outputBuffers = new Map<OutputUnit, CodeOutput>();
|
| @@ -370,7 +373,7 @@ class Emitter implements js_emitter.Emitter {
|
| switch (builtin) {
|
| case JsBuiltin.dartObjectConstructor:
|
| return jsAst.js.expressionTemplateYielding(
|
| - typeAccess(compiler.objectClass));
|
| + typeAccess(coreClasses.objectClass));
|
|
|
| case JsBuiltin.isCheckPropertyToJsConstructorName:
|
| int isPrefixLength = namer.operatorIsPrefix.length;
|
| @@ -445,13 +448,13 @@ class Emitter implements js_emitter.Emitter {
|
| /// In minified mode we want to keep the name for the most common core types.
|
| bool _isNativeTypeNeedingReflectionName(Element element) {
|
| if (!element.isClass) return false;
|
| - return (element == compiler.intClass ||
|
| - element == compiler.doubleClass ||
|
| - element == compiler.numClass ||
|
| - element == compiler.stringClass ||
|
| - element == compiler.boolClass ||
|
| - element == compiler.nullClass ||
|
| - element == compiler.listClass);
|
| + return (element == coreClasses.intClass ||
|
| + element == coreClasses.doubleClass ||
|
| + element == coreClasses.numClass ||
|
| + element == coreClasses.stringClass ||
|
| + element == coreClasses.boolClass ||
|
| + element == coreClasses.nullClass ||
|
| + element == coreClasses.listClass);
|
| }
|
|
|
| /// Returns the "reflection name" of an [Element] or [Selector].
|
| @@ -1187,8 +1190,8 @@ class Emitter implements js_emitter.Emitter {
|
| // We can be pretty sure that the objectClass is initialized, since
|
| // typedefs are only emitted with reflection, which requires lots of
|
| // classes.
|
| - assert(compiler.objectClass != null);
|
| - builder.superName = namer.className(compiler.objectClass);
|
| + assert(coreClasses.objectClass != null);
|
| + builder.superName = namer.className(coreClasses.objectClass);
|
| jsAst.Node declaration = builder.toObjectInitializer();
|
| jsAst.Name mangledName = namer.globalPropertyName(typedef);
|
| String reflectionName = getReflectionName(typedef, mangledName);
|
|
|