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 51923a52ada24d8e7a8e7c77bcf71f01126092bb
Author: Josh Tynjala <[email protected]>
AuthorDate: Tue Mar 31 10:03:39 2020 -0700

    prevent-rename-public-symbols and prevent-rename-protected-symbols compiler 
options
---
 .../codegen/js/royale/JSRoyaleDocEmitter.java      |  2 +-
 .../driver/js/goog/JSGoogConfiguration.java        | 41 ++++++++++++++++++++--
 .../apache/royale/compiler/utils/ClosureUtils.java |  8 ++---
 3 files changed, 44 insertions(+), 7 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 d3d9442..62c8e04 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
@@ -558,7 +558,7 @@ public class JSRoyaleDocEmitter extends JSGoogDocEmitter
         else
         {
                RoyaleJSProject fjp =  (RoyaleJSProject)project;
-            boolean warnPublicVars = fjp.config != null && 
fjp.config.getWarnPublicVars();
+            boolean warnPublicVars = fjp.config != null && 
fjp.config.getWarnPublicVars() && !fjp.config.getPreventRenamePublicSymbols();
             IMetaTagsNode meta = node.getMetaTags();
             boolean bindable = false;
             if (meta != null)
diff --git 
a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/driver/js/goog/JSGoogConfiguration.java
 
b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/driver/js/goog/JSGoogConfiguration.java
index 9942bd0..1d813e4 100644
--- 
a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/driver/js/goog/JSGoogConfiguration.java
+++ 
b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/driver/js/goog/JSGoogConfiguration.java
@@ -425,7 +425,6 @@ public class JSGoogConfiguration extends JSConfiguration
     {
        exportPublicSymbols = value;
     }
-
     
     //
     // 'export-protected-symbols'
@@ -446,12 +445,50 @@ public class JSGoogConfiguration extends JSConfiguration
        exportProtectedSymbols = value;
     }
 
+    //
+    // 'prevent-rename-public-symbols'
+    //
+
+    private boolean preventRenamePublicSymbols = true;
+
+    public boolean getPreventRenamePublicSymbols()
+    {
+        return preventRenamePublicSymbols;
+    }
+
+    @Config
+    @Mapping("prevent-rename-public-symbols")
+    public void setPreventRenamePublicSymbols(ConfigurationValue cv, boolean 
value)
+            throws ConfigurationException
+    {
+       preventRenamePublicSymbols = value;
+    }
+
+    //
+    // 'prevent-rename-protected-symbols'
+    //
+
+    private boolean preventRenameProtectedSymbols = true;
+
+    public boolean getPreventRenameProtectedSymbols()
+    {
+        return preventRenameProtectedSymbols;
+    }
+
+    @Config
+    @Mapping("prevent-rename-protected-symbols")
+    public void setPreventRenameProtectedSymbols(ConfigurationValue cv, 
boolean value)
+            throws ConfigurationException
+    {
+       preventRenameProtectedSymbols = value;
+    }
+
     
     //
     // 'warn-public-vars'
     //
 
-    private boolean warnPublicVars = false;
+    private boolean warnPublicVars = true;
 
     public boolean getWarnPublicVars()
     {
diff --git 
a/compiler-jx/src/main/java/org/apache/royale/compiler/utils/ClosureUtils.java 
b/compiler-jx/src/main/java/org/apache/royale/compiler/utils/ClosureUtils.java
index 785385e..b94fdf2 100644
--- 
a/compiler-jx/src/main/java/org/apache/royale/compiler/utils/ClosureUtils.java
+++ 
b/compiler-jx/src/main/java/org/apache/royale/compiler/utils/ClosureUtils.java
@@ -37,8 +37,8 @@ public class ClosureUtils
         {
             return;
         }
-               boolean renamePublic = false;
-               boolean renameProtected = true;
+               boolean preventRenamePublic = 
project.config.getPreventRenamePublicSymbols();
+               boolean preventRenameProtected = 
project.config.getPreventRenameProtectedSymbols();
         for (IDefinition def : cu.getDefinitionPromises())
         {
             if(def instanceof DefinitionPromise)
@@ -62,11 +62,11 @@ public class ClosureUtils
                     {
                         continue;
                     }
-                    if (localDef.isProtected() && renameProtected)
+                    if (localDef.isProtected() && !preventRenameProtected)
                     {
                         continue;
                     }
-                    if (localDef.isPublic() && renamePublic)
+                    if (localDef.isPublic() && !preventRenamePublic)
                     {
                         continue;
                     }

Reply via email to