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