You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by ah...@apache.org on 2014/11/15 07:28:25 UTC

[3/8] git commit: [flex-falcon] [refs/heads/develop] - fix simple array output

fix simple array output


Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/7120b401
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/7120b401
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/7120b401

Branch: refs/heads/develop
Commit: 7120b4016192f035e69340540aef232b7d92b0e2
Parents: 00147b6
Author: Alex Harui <ah...@apache.org>
Authored: Thu Nov 13 15:13:06 2014 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Thu Nov 13 15:13:06 2014 -0800

----------------------------------------------------------------------
 .../codegen/mxml/flexjs/MXMLFlexJSEmitter.java        | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/7120b401/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSEmitter.java
index 4eeea84..43d2af2 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSEmitter.java
@@ -479,7 +479,7 @@ public class MXMLFlexJSEmitter extends MXMLEmitter implements
             {
                 StringBuilder sb = new StringBuilder();
                 sb.append(asEmitter.stringifyNode(destNode));
-                writeNewline(sb.toString());
+                writeNewline(sb.toString() + ASEmitterTokens.COMMA.getToken());
             }
             else
                 writeNewline(ASEmitterTokens.NULL.getToken() + ASEmitterTokens.COMMA.getToken());
@@ -1463,18 +1463,28 @@ public class MXMLFlexJSEmitter extends MXMLEmitter implements
         {
             final IASNode child = node.getChild(i);
             ASTNodeID nodeID = child.getNodeID();
-            if (nodeID == ASTNodeID.MXMLArrayID || nodeID == ASTNodeID.MXMLInstanceID)
+            if (nodeID == ASTNodeID.MXMLArrayID || nodeID == ASTNodeID.MXMLInstanceID || nodeID == ASTNodeID.MXMLStateID)
             {
                 isSimple = false;
                 break;
             }
         }
         boolean oldMakingSimpleArray = makingSimpleArray;
+        MXMLDescriptorSpecifier ps = getCurrentDescriptor("ps");
         if (isSimple)
+        {
         	makingSimpleArray = true;
+        	ps.value = ASEmitterTokens.SQUARE_OPEN.getToken();
+        }
         for (int i = 0; i < len; i++)
         {
             getMXMLWalker().walk(node.getChild(i)); // Instance
+            if (isSimple && i < len - 1)
+            	ps.value += ASEmitterTokens.COMMA.getToken();
+        }
+        if (isSimple)
+        {
+        	ps.value += ASEmitterTokens.SQUARE_CLOSE.getToken();        	
         }
         makingSimpleArray = oldMakingSimpleArray;