ASBlockWalker: visitVariable() and visitFunction() now have separate paths for 
package-level variables and functions, but still need to call emitters


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

Branch: refs/heads/develop
Commit: aaeeaee613e50b0fcc262c00656d4c0dbe52dec7
Parents: f427b88
Author: Josh Tynjala <[email protected]>
Authored: Fri Jan 8 22:10:29 2016 -0800
Committer: Josh Tynjala <[email protected]>
Committed: Fri Jan 8 22:10:29 2016 -0800

----------------------------------------------------------------------
 .../compiler/internal/codegen/as/ASBlockWalker.java     | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/aaeeaee6/compiler.jx/src/org/apache/flex/compiler/internal/codegen/as/ASBlockWalker.java
----------------------------------------------------------------------
diff --git 
a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/as/ASBlockWalker.java
 
b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/as/ASBlockWalker.java
index a0d128d..fec44cc 100644
--- 
a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/as/ASBlockWalker.java
+++ 
b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/as/ASBlockWalker.java
@@ -238,7 +238,11 @@ public class ASBlockWalker implements IASBlockVisitor, 
IASBlockWalker
     public void visitVariable(IVariableNode node)
     {
         debug("visitVariable()");
-        if (SemanticUtils.isMemberDefinition(node.getDefinition()))
+        if (SemanticUtils.isPackageDefinition(node.getDefinition()))
+        {
+            //TODO: emit package-level variable
+        }
+        else if (SemanticUtils.isMemberDefinition(node.getDefinition()))
         {
             emitter.emitField(node);
         }
@@ -252,7 +256,11 @@ public class ASBlockWalker implements IASBlockVisitor, 
IASBlockWalker
     public void visitFunction(IFunctionNode node)
     {
         debug("visitFunction()");
-        if (DefinitionUtils.isMemberDefinition(node.getDefinition()))
+        if (SemanticUtils.isPackageDefinition(node.getDefinition()))
+        {
+            //TODO: emit package-level function
+        }
+        else if (DefinitionUtils.isMemberDefinition(node.getDefinition()))
         {
             emitter.emitMethod(node);
         }

Reply via email to