Chromium Code Reviews| Index: dart/pkg/compiler/lib/src/js_emitter/old_emitter/class_builder.dart |
| diff --git a/dart/pkg/compiler/lib/src/js_emitter/old_emitter/class_builder.dart b/dart/pkg/compiler/lib/src/js_emitter/old_emitter/class_builder.dart |
| index deb4fc44ba18ce9d2125fa356e1766b665ec58c4..c4b82d6a75c02f577fd2c912e5e19a4205d41f1e 100644 |
| --- a/dart/pkg/compiler/lib/src/js_emitter/old_emitter/class_builder.dart |
| +++ b/dart/pkg/compiler/lib/src/js_emitter/old_emitter/class_builder.dart |
| @@ -34,7 +34,8 @@ class ClassBuilder { |
| fields.add(field); |
| } |
| - jsAst.ObjectInitializer toObjectInitializer() { |
| + jsAst.ObjectInitializer toObjectInitializer( |
| + {bool omitClassDescriptor: false}) { |
|
Johnni Winther
2014/12/01 13:40:20
Change to `bool emitClassDescriptor: true`.
ahe
2014/12/01 14:03:37
Will do in follow up.
|
| StringBuffer buffer = new StringBuffer(); |
| if (superName != null) { |
| buffer.write('$superName'); |
| @@ -52,11 +53,17 @@ class ClassBuilder { |
| classData = |
| new jsAst.ArrayInitializer.from([classData]..addAll(fieldMetadata)); |
| } |
| - var fieldsAndProperties = |
| - [new jsAst.Property(js.string(namer.classDescriptorProperty), |
| - classData)] |
| - ..addAll(properties); |
| + List<jsAst.Property> fieldsAndProperties; |
| + if (!omitClassDescriptor) { |
| + fieldsAndProperties = <jsAst.Property>[]; |
| + fieldsAndProperties.add( |
| + new jsAst.Property( |
| + js.string(namer.classDescriptorProperty), classData)); |
| + fieldsAndProperties |
| + ..addAll(properties); |
|
Johnni Winther
2014/12/01 13:40:20
`..addAll` -> `.addAll` since it isn't used.
ahe
2014/12/01 14:03:38
Will do in follow up.
|
| + } else { |
| + fieldsAndProperties = properties; |
| + } |
| return new jsAst.ObjectInitializer(fieldsAndProperties, isOneLiner: false); |
| } |
| - |
| } |