Index: pkg/compiler/lib/src/js_model/elements.dart |
diff --git a/pkg/compiler/lib/src/js_model/elements.dart b/pkg/compiler/lib/src/js_model/elements.dart |
index d1bde087e14c97f89529b7383c167b1444a382a1..08409b271f56629eae502e7a0dd9b4eff5c740eb 100644 |
--- a/pkg/compiler/lib/src/js_model/elements.dart |
+++ b/pkg/compiler/lib/src/js_model/elements.dart |
@@ -136,6 +136,11 @@ class JsElementCreatorMixin { |
isFromEnvironmentConstructor: isFromEnvironmentConstructor); |
} |
+ ConstructorBodyEntity createConstructorBody( |
+ int memberIndex, ConstructorEntity constructor) { |
+ return new JConstructorBody(memberIndex, constructor); |
+ } |
+ |
IndexedFunction createGetter(int memberIndex, LibraryEntity library, |
ClassEntity enclosingClass, Name name, AsyncMarker asyncMarker, |
{bool isStatic, bool isExternal, bool isAbstract}) { |
@@ -442,6 +447,26 @@ class JFactoryConstructor extends JConstructor { |
bool get isGenerativeConstructor => false; |
} |
+class JConstructorBody extends JFunction implements ConstructorBodyEntity { |
+ final ConstructorEntity constructor; |
+ |
+ JConstructorBody(int memberIndex, this.constructor) |
+ : super( |
+ memberIndex, |
+ constructor.library, |
+ constructor.enclosingClass, |
+ constructor.memberName, |
+ constructor.parameterStructure, |
+ AsyncMarker.SYNC, |
+ isStatic: false, |
+ isExternal: false); |
+ |
+ @override |
+ bool get isFunction => true; |
+ |
+ String get _kind => 'constructor_body'; |
+} |
+ |
class JMethod extends JFunction { |
final bool isAbstract; |