Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(338)

Side by Side Diff: pkg/compiler/lib/src/js_emitter/full_emitter/class_emitter.dart

Issue 2814453005: Merge CommonElements and BackendHelpers! (Closed)
Patch Set: comments and re-merge, take two Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library dart2js.js_emitter.full_emitter.class_emitter; 5 library dart2js.js_emitter.full_emitter.class_emitter;
6 6
7 import '../../common.dart'; 7 import '../../common.dart';
8 import '../../common/names.dart' show Names; 8 import '../../common/names.dart' show Names;
9 import '../../elements/resolution_types.dart' show ResolutionDartType; 9 import '../../elements/resolution_types.dart' show ResolutionDartType;
10 import '../../deferred_load.dart' show OutputUnit; 10 import '../../deferred_load.dart' show OutputUnit;
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
59 if (cls.hasRtiField) { 59 if (cls.hasRtiField) {
60 builder.addField(namer.rtiFieldJsName); 60 builder.addField(namer.rtiFieldJsName);
61 } 61 }
62 emitCheckedClassSetters(cls, builder); 62 emitCheckedClassSetters(cls, builder);
63 emitClassGettersSettersForCSP(cls, builder); 63 emitClassGettersSettersForCSP(cls, builder);
64 emitInstanceMembers(cls, builder); 64 emitInstanceMembers(cls, builder);
65 emitStubs(cls.callStubs, builder); 65 emitStubs(cls.callStubs, builder);
66 emitRuntimeTypeInformation(cls, builder); 66 emitRuntimeTypeInformation(cls, builder);
67 emitNativeInfo(cls, builder); 67 emitNativeInfo(cls, builder);
68 68
69 if (classElement == backend.helpers.closureClass) { 69 if (classElement == backend.commonElements.closureClass) {
70 // We add a special getter here to allow for tearing off a closure from 70 // We add a special getter here to allow for tearing off a closure from
71 // itself. 71 // itself.
72 jsAst.Fun function = js('function() { return this; }'); 72 jsAst.Fun function = js('function() { return this; }');
73 jsAst.Name name = namer.getterForMember(Names.call); 73 jsAst.Name name = namer.getterForMember(Names.call);
74 builder.addProperty(name, function); 74 builder.addProperty(name, function);
75 } 75 }
76 76
77 emitClassBuilderWithReflectionData( 77 emitClassBuilderWithReflectionData(
78 cls, builder, enclosingBuilder, fragment); 78 cls, builder, enclosingBuilder, fragment);
79 } 79 }
(...skipping 361 matching lines...) Expand 10 before | Expand all | Expand 10 after
441 String reflectionName = emitter.getReflectionName(selector, name); 441 String reflectionName = emitter.getReflectionName(selector, name);
442 if (reflectionName != null) { 442 if (reflectionName != null) {
443 var reflectable = js( 443 var reflectable = js(
444 backend.mirrorsData.isMemberAccessibleByReflection(member) 444 backend.mirrorsData.isMemberAccessibleByReflection(member)
445 ? '1' 445 ? '1'
446 : '0'); 446 : '0');
447 builder.addPropertyByName('+$reflectionName', reflectable); 447 builder.addPropertyByName('+$reflectionName', reflectable);
448 } 448 }
449 } 449 }
450 } 450 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698