You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by jo...@apache.org on 2020/05/26 21:40:35 UTC
[royale-compiler] 04/05: JSRoyaleDocEmitter: no export annotation
for closure on package-level variables and functions
This is an automated email from the ASF dual-hosted git repository.
joshtynjala pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-compiler.git
commit 60fa42b95d0fc64a8911a69800f61b2631b3a78a
Author: Josh Tynjala <jo...@apache.org>
AuthorDate: Tue May 26 14:39:51 2020 -0700
JSRoyaleDocEmitter: no export annotation for closure on package-level variables and functions
---
.../compiler/internal/codegen/js/royale/JSRoyaleDocEmitter.java | 4 ++++
.../compiler/internal/codegen/js/royale/TestRoyalePackage.java | 9 ++++-----
2 files changed, 8 insertions(+), 5 deletions(-)
diff --git a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/royale/JSRoyaleDocEmitter.java b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/royale/JSRoyaleDocEmitter.java
index ad57c68..37d38f8 100644
--- a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/royale/JSRoyaleDocEmitter.java
+++ b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/royale/JSRoyaleDocEmitter.java
@@ -31,7 +31,9 @@ import org.apache.royale.compiler.constants.IASLanguageConstants;
import org.apache.royale.compiler.definitions.IClassDefinition;
import org.apache.royale.compiler.definitions.IDefinition;
import org.apache.royale.compiler.definitions.IFunctionDefinition;
+import org.apache.royale.compiler.definitions.IFunctionDefinition.FunctionClassification;
import org.apache.royale.compiler.definitions.ITypeDefinition;
+import org.apache.royale.compiler.definitions.IVariableDefinition.VariableClassification;
import org.apache.royale.compiler.definitions.references.IReference;
import org.apache.royale.compiler.internal.codegen.as.ASEmitterTokens;
import org.apache.royale.compiler.internal.codegen.js.JSEmitterTokens;
@@ -145,6 +147,7 @@ public class JSRoyaleDocEmitter extends JSGoogDocEmitter
emitExports = !suppressExports;
exportProtected = false;
}
+ emitExports = emitExports && !node.getFunctionClassification().equals(FunctionClassification.PACKAGE_MEMBER);
coercionList = null;
ignoreList = null;
@@ -564,6 +567,7 @@ public class JSRoyaleDocEmitter extends JSGoogDocEmitter
emitExports = !suppressExports;
exportProtected = false;
}
+ emitExports = emitExports && !node.getVariableClassification().equals(VariableClassification.PACKAGE_MEMBER);
begin();
diff --git a/compiler-jx/src/test/java/org/apache/royale/compiler/internal/codegen/js/royale/TestRoyalePackage.java b/compiler-jx/src/test/java/org/apache/royale/compiler/internal/codegen/js/royale/TestRoyalePackage.java
index 08c748d..dfb6c30 100644
--- a/compiler-jx/src/test/java/org/apache/royale/compiler/internal/codegen/js/royale/TestRoyalePackage.java
+++ b/compiler-jx/src/test/java/org/apache/royale/compiler/internal/codegen/js/royale/TestRoyalePackage.java
@@ -1133,7 +1133,6 @@ public class TestRoyalePackage extends TestGoogPackage
"\n" +
"\n" +
"/**\n" +
- " * @export\n" +
" * @return {number}\n" +
" */\n" +
"foo.bar.A = function() {\n" +
@@ -1193,7 +1192,7 @@ public class TestRoyalePackage extends TestGoogPackage
{
IFileNode node = compileAS("package {public function A(){}}");
asBlockWalker.visitFile(node);
- assertOutWithMetadata("/**\n * A\n *\n * @fileoverview\n *\n * @suppress {checkTypes|accessControls}\n */\n\ngoog.provide('A');\n\n\n\n/**\n * @export\n */\nA = function() {\n}");
+ assertOutWithMetadata("/**\n * A\n *\n * @fileoverview\n *\n * @suppress {checkTypes|accessControls}\n */\n\ngoog.provide('A');\n\n\n\n/**\n */\nA = function() {\n}");
}
@Test
@@ -1201,7 +1200,7 @@ public class TestRoyalePackage extends TestGoogPackage
{
IFileNode node = compileAS("package foo.bar.baz {public function A(){}}");
asBlockWalker.visitFile(node);
- assertOutWithMetadata("/**\n * foo.bar.baz.A\n *\n * @fileoverview\n *\n * @suppress {checkTypes|accessControls}\n */\n\ngoog.provide('foo.bar.baz.A');\n\n\n\n/**\n * @export\n */\nfoo.bar.baz.A = function() {\n}");
+ assertOutWithMetadata("/**\n * foo.bar.baz.A\n *\n * @fileoverview\n *\n * @suppress {checkTypes|accessControls}\n */\n\ngoog.provide('foo.bar.baz.A');\n\n\n\n/**\n */\nfoo.bar.baz.A = function() {\n}");
}
@Test
@@ -1209,7 +1208,7 @@ public class TestRoyalePackage extends TestGoogPackage
{
IFileNode node = compileAS("package {public var A:String = \"Hello\";}");
asBlockWalker.visitFile(node);
- assertOutWithMetadata("/**\n * A\n *\n * @fileoverview\n *\n * @suppress {checkTypes|accessControls}\n */\n\ngoog.provide('A');\n\n\n\n/**\n * @export\n * @type {string}\n */\nA = \"Hello\"");
+ assertOutWithMetadata("/**\n * A\n *\n * @fileoverview\n *\n * @suppress {checkTypes|accessControls}\n */\n\ngoog.provide('A');\n\n\n\n/**\n * @type {string}\n */\nA = \"Hello\"");
}
@Test
@@ -1217,7 +1216,7 @@ public class TestRoyalePackage extends TestGoogPackage
{
IFileNode node = compileAS("package foo.bar.baz {public var A:String = \"Hello\";}");
asBlockWalker.visitFile(node);
- assertOutWithMetadata("/**\n * foo.bar.baz.A\n *\n * @fileoverview\n *\n * @suppress {checkTypes|accessControls}\n */\n\ngoog.provide('foo.bar.baz.A');\n\n\n\n/**\n * @export\n * @type {string}\n */\nfoo.bar.baz.A = \"Hello\"");
+ assertOutWithMetadata("/**\n * foo.bar.baz.A\n *\n * @fileoverview\n *\n * @suppress {checkTypes|accessControls}\n */\n\ngoog.provide('foo.bar.baz.A');\n\n\n\n/**\n * @type {string}\n */\nfoo.bar.baz.A = \"Hello\"");
}
@Override