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 <[email protected]>
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();