This is an automated email from the ASF dual-hosted git repository. gregdove pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/royale-compiler.git
The following commit(s) were added to refs/heads/develop by this push: new e3b6cc0 Fix a reported issue, surfacing from a recent change that (I was able to repro and believe) was related to IEventDispatcher Binding codegen implementation. e3b6cc0 is described below commit e3b6cc02eba156ec6e465efd608e368651301322 Author: greg-dove <greg.d...@gmail.com> AuthorDate: Thu Feb 13 20:58:58 2020 +1300 Fix a reported issue, surfacing from a recent change that (I was able to repro and believe) was related to IEventDispatcher Binding codegen implementation. --- .../royale/compiler/internal/codegen/js/jx/BindableEmitter.java | 7 +------ .../compiler/internal/codegen/js/jx/PackageFooterEmitter.java | 5 +++++ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/BindableEmitter.java b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/BindableEmitter.java index b1c1527..31d49e1 100644 --- a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/BindableEmitter.java +++ b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/BindableEmitter.java @@ -116,7 +116,7 @@ public class BindableEmitter extends JSSubEmitter implements } - private void emitBindableInterfaceMethods(IClassDefinition definition) { + public void emitBindableInterfaceMethods(IClassDefinition definition) { writeNewline(); writeNewline("/**"); writeNewline(" * Compiler generated"); @@ -214,11 +214,6 @@ public class BindableEmitter extends JSSubEmitter implements private void emitInstanceBindableVars(IClassDefinition definition) { - if (definition.needsEventDispatcher(getProject())) { - if (getModel().getImplicitBindableImplementation() == ImplicitBindableImplementation.IMPLEMENTS) - emitBindableInterfaceMethods(definition); - } - String qname = definition.getQualifiedName(); write(JSGoogEmitterTokens.OBJECT); write(ASEmitterTokens.MEMBER_ACCESS); diff --git a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/PackageFooterEmitter.java b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/PackageFooterEmitter.java index b6e082d..1e54271 100644 --- a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/PackageFooterEmitter.java +++ b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/PackageFooterEmitter.java @@ -193,6 +193,11 @@ public class PackageFooterEmitter extends JSSubEmitter implements write(ASEmitterTokens.BLOCK_CLOSE); write(ASEmitterTokens.SEMICOLON); + if (needsIEventDispatcher) { + JSRoyaleEmitter fjs = (JSRoyaleEmitter)getEmitter(); + fjs.getBindableEmitter().emitBindableInterfaceMethods(((IClassDefinition) tnode.getDefinition())); + } + collectReflectionData(tnode); IMetaTagNode[] metadata = null; IMetaTagsNode metadataTags = tnode.getMetaTags();