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 bbe6adab4f6e3d066af33468a1dd21ea36f6ec6c
Author: Josh Tynjala <[email protected]>
AuthorDate: Fri Jul 10 15:48:44 2026 -0700

    MXMLRoyaleEmitter: follow up to emitting MXML factory methods to include 
mx:Function, mx:Class, and mx:RegExp
    
    Followup to de684f3eb4c65bcaa424e9a5d22d45ced57c7005
---
 .../codegen/mxml/royale/MXMLRoyaleEmitter.java     | 31 +++++++++++++++++++---
 1 file changed, 27 insertions(+), 4 deletions(-)

diff --git 
a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/mxml/royale/MXMLRoyaleEmitter.java
 
b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/mxml/royale/MXMLRoyaleEmitter.java
index e05f879f3..3db245f46 100644
--- 
a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/mxml/royale/MXMLRoyaleEmitter.java
+++ 
b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/mxml/royale/MXMLRoyaleEmitter.java
@@ -4524,10 +4524,10 @@ public class MXMLRoyaleEmitter extends MXMLEmitter 
implements
 
             return sb.toString();
        }
-       else if ((instanceNode instanceof IMXMLIntNode) ||
-                       (instanceNode instanceof IMXMLUintNode) ||
-                       (instanceNode instanceof IMXMLNumberNode) ||
-                       (instanceNode instanceof IMXMLBooleanNode))
+       else if (instanceNode instanceof IMXMLIntNode ||
+                       instanceNode instanceof IMXMLUintNode ||
+                       instanceNode instanceof IMXMLNumberNode ||
+                       instanceNode instanceof IMXMLBooleanNode)
        {
                IMXMLExpressionNode scalarNode = 
(IMXMLExpressionNode)instanceNode;
                IASNode vNode = scalarNode.getExpressionNode();
@@ -4538,6 +4538,29 @@ public class MXMLRoyaleEmitter extends MXMLEmitter 
implements
                    return value.toString();
                }
        }
+        else if (instanceNode instanceof IMXMLRegExpNode)
+        {
+               IMXMLRegExpNode regExpNode = (IMXMLRegExpNode)instanceNode;
+               IASNode vNode = regExpNode.getExpressionNode();
+               if (vNode instanceof IRegExpLiteralNode)
+               {
+                IASEmitter asEmitter = ((IMXMLBlockWalker) getMXMLWalker())
+                        .getASEmitter();
+                return ((JSRoyaleEmitter)asEmitter).stringifyNode(vNode);
+               }
+        }
+        else if (instanceNode instanceof IMXMLFunctionNode ||
+                instanceNode instanceof IMXMLClassNode)
+        {
+            IMXMLExpressionNode mxmlExprNode = (IMXMLExpressionNode) 
instanceNode;
+            IASNode exprNode = mxmlExprNode.getExpressionNode();
+            if (exprNode instanceof IIdentifierNode || exprNode instanceof 
IMemberAccessExpressionNode)
+            {
+                IASEmitter asEmitter = ((IMXMLBlockWalker) getMXMLWalker())
+                        .getASEmitter();
+                return ((JSRoyaleEmitter)asEmitter).stringifyNode(exprNode);
+            }
+        }
        return "";
     }
 

Reply via email to