Index: sdk/lib/_internal/compiler/implementation/js_backend/emitter_no_eval.dart |
diff --git a/sdk/lib/_internal/compiler/implementation/js_backend/emitter_no_eval.dart b/sdk/lib/_internal/compiler/implementation/js_backend/emitter_no_eval.dart |
index 6810dac58a35977f4427438c65ba11aea82a3fe2..ac5968b9029dec8f52907b1bb68105130b83fd70 100644 |
--- a/sdk/lib/_internal/compiler/implementation/js_backend/emitter_no_eval.dart |
+++ b/sdk/lib/_internal/compiler/implementation/js_backend/emitter_no_eval.dart |
@@ -88,14 +88,12 @@ $lazyInitializerLogic |
void emitBoundClosureClassHeader(String mangledName, |
String superName, |
List<String> fieldNames, |
- CodeBuffer buffer) { |
- buffer.add("$classesCollector.$mangledName = {'': "); |
- buffer.add( |
- js.prettyPrint(buildConstructor(mangledName, fieldNames), compiler)); |
- buffer.add(",\n 'super': '$superName',\n"); |
+ ClassBuilder builder) { |
+ builder.addProperty('', buildConstructor(mangledName, fieldNames)); |
+ builder.addProperty('super', js.string(superName)); |
} |
- void emitClassConstructor(ClassElement classElement, CodeBuffer buffer) { |
+ void emitClassConstructor(ClassElement classElement, ClassBuilder builder) { |
// Say we have a class A with fields b, c and d, where c needs a getter and |
// d needs both a getter and a setter. Then we produce: |
// - a constructor (directly into the given [buffer]): |
@@ -114,23 +112,20 @@ $lazyInitializerLogic |
fields.add(name); |
}); |
String constructorName = namer.safeName(classElement.name.slowToString()); |
- buffer.add("'': "); |
- buffer.add( |
- js.prettyPrint(buildConstructor(constructorName, fields), compiler)); |
+ |
+ builder.addProperty('', buildConstructor(constructorName, fields)); |
} |
- void emitSuper(String superName, CodeBuffer buffer) { |
+ void emitSuper(String superName, ClassBuilder builder) { |
if (superName != '') { |
- buffer.add(",\n 'super': '$superName'"); |
+ builder.addProperty('super', js.string(superName)); |
} |
} |
void emitClassFields(ClassElement classElement, |
- CodeBuffer buffer, |
- bool emitEndingComma, |
+ ClassBuilder builder, |
{ String superClass: "", |
bool classIsNative: false}) { |
- if (emitEndingComma) buffer.add(', '); |
} |
bool get getterAndSetterCanBeImplementedByFieldSpec => false; |