You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by jo...@apache.org on 2016/04/08 23:37:10 UTC
[1/6] git commit: [flex-falcon] [refs/heads/develop] - ASParser.g:
fixed issue where the parameters container of a FunctionNode had the wrong
column position. similar to function call arguments,
the parameters now include the parentheses
Repository: flex-falcon
Updated Branches:
refs/heads/develop 239f935f2 -> 4cc081b01
ASParser.g: fixed issue where the parameters container of a FunctionNode had the wrong column position. similar to function call arguments, the parameters now include the parentheses
Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/94987360
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/94987360
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/94987360
Branch: refs/heads/develop
Commit: 94987360cb06b00d6f7909ffdfc2ab74f50de544
Parents: 239f935
Author: Josh Tynjala <jo...@apache.org>
Authored: Fri Apr 8 10:48:33 2016 -0700
Committer: Josh Tynjala <jo...@apache.org>
Committed: Fri Apr 8 10:48:33 2016 -0700
----------------------------------------------------------------------
.../org/apache/flex/compiler/internal/parsing/as/ASParser.g | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/94987360/compiler/src/org/apache/flex/compiler/internal/parsing/as/ASParser.g
----------------------------------------------------------------------
diff --git a/compiler/src/org/apache/flex/compiler/internal/parsing/as/ASParser.g b/compiler/src/org/apache/flex/compiler/internal/parsing/as/ASParser.g
index 835f63a..34cb240 100644
--- a/compiler/src/org/apache/flex/compiler/internal/parsing/as/ASParser.g
+++ b/compiler/src/org/apache/flex/compiler/internal/parsing/as/ASParser.g
@@ -931,11 +931,11 @@ functionExpression returns [FunctionObjectNode n]
lpT:TOKEN_PAREN_OPEN
{
p = f.getParametersContainerNode();
- p.startAfter(lpT);
+ p.startBefore(lpT);
}
formalParameters[p]
rpT:TOKEN_PAREN_CLOSE
- { p.endBefore(rpT); }
+ { p.endAfter(rpT); }
(resultType[f])?
{ enableSemicolonInsertion(); }
@@ -1044,11 +1044,11 @@ functionDefinition[ContainerNode c, INamespaceDecorationNode namespace, List<Mod
lpT:TOKEN_PAREN_OPEN
{
final ContainerNode parameters = n.getParametersContainerNode();
- parameters.startAfter(lpT);
+ parameters.startBefore(lpT);
}
formalParameters[parameters]
( rpT:TOKEN_PAREN_CLOSE
- { parameters.endBefore(rpT); }
+ { parameters.endAfter(rpT); }
// error recovery for typing in-progress function definitions
exception catch [RecognitionException ex] { handleParsingError(ex); }
)
[2/6] git commit: [flex-falcon] [refs/heads/develop] -
SourceMapTestBase: better output from assertMapping() to include the passed
in locations
Posted by jo...@apache.org.
SourceMapTestBase: better output from assertMapping() to include the passed in locations
Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/23f83ec3
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/23f83ec3
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/23f83ec3
Branch: refs/heads/develop
Commit: 23f83ec32d924e60b15510cdee5f452fa892c861
Parents: 9498736
Author: Josh Tynjala <jo...@apache.org>
Authored: Fri Apr 8 11:54:57 2016 -0700
Committer: Josh Tynjala <jo...@apache.org>
Committed: Fri Apr 8 11:54:57 2016 -0700
----------------------------------------------------------------------
.../apache/flex/compiler/internal/test/SourceMapTestBase.java | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/23f83ec3/compiler.jx.tests/src/org/apache/flex/compiler/internal/test/SourceMapTestBase.java
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/src/org/apache/flex/compiler/internal/test/SourceMapTestBase.java b/compiler.jx.tests/src/org/apache/flex/compiler/internal/test/SourceMapTestBase.java
index 9843267..ac58f1c 100644
--- a/compiler.jx.tests/src/org/apache/flex/compiler/internal/test/SourceMapTestBase.java
+++ b/compiler.jx.tests/src/org/apache/flex/compiler/internal/test/SourceMapTestBase.java
@@ -47,7 +47,9 @@ public class SourceMapTestBase extends ASTestBase
break;
}
}
- assertTrue("Mapping not found for node " + node.toString(), foundMapping);
+ assertTrue("Mapping not found for node " + node.getNodeID() + ". Expected "
+ + "source: (" + nodeStartLine + ", " + nodeStartColumn + "), dest: (" + outStartLine + ", " + outStartColumn + ") to (" + outEndLine + ", " + outEndColumn + ")",
+ foundMapping);
}
}
[5/6] git commit: [flex-falcon] [refs/heads/develop] - added source
maps for some semicolons
Posted by jo...@apache.org.
added source maps for some semicolons
Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/584f4337
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/584f4337
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/584f4337
Branch: refs/heads/develop
Commit: 584f433777beb32087f7d159346320e7f06468eb
Parents: c759afd
Author: Josh Tynjala <jo...@apache.org>
Authored: Fri Apr 8 14:12:41 2016 -0700
Committer: Josh Tynjala <jo...@apache.org>
Committed: Fri Apr 8 14:12:41 2016 -0700
----------------------------------------------------------------------
.../compiler/internal/codegen/js/JSEmitter.java | 8 +++
.../internal/codegen/js/jx/ClassEmitter.java | 4 ++
.../codegen/js/jx/StatementEmitter.java | 55 ++++++++++++++++++++
3 files changed, 67 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/584f4337/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/JSEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/JSEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/JSEmitter.java
index 65a8e63..2ab71b3 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/JSEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/JSEmitter.java
@@ -44,6 +44,7 @@ import org.apache.flex.compiler.internal.codegen.js.jx.ParameterEmitter;
import org.apache.flex.compiler.internal.codegen.js.jx.ParametersEmitter;
import org.apache.flex.compiler.internal.codegen.js.jx.ReturnEmitter;
import org.apache.flex.compiler.internal.codegen.js.jx.SourceMapDirectiveEmitter;
+import org.apache.flex.compiler.internal.codegen.js.jx.StatementEmitter;
import org.apache.flex.compiler.internal.codegen.js.jx.TernaryOperatorEmitter;
import org.apache.flex.compiler.internal.codegen.js.jx.UnaryOperatorEmitter;
import org.apache.flex.compiler.internal.codegen.js.jx.WhileLoopEmitter;
@@ -95,6 +96,7 @@ public class JSEmitter extends ASEmitter implements IJSEmitter
public DoWhileLoopEmitter doWhileLoopEmitter;
public ForLoopEmitter forLoopEmitter;
public IterationFlowEmitter interationFlowEmitter;
+ public StatementEmitter statementEmitter;
public SourceMapDirectiveEmitter sourceMapDirectiveEmitter;
@Override
@@ -137,6 +139,7 @@ public class JSEmitter extends ASEmitter implements IJSEmitter
doWhileLoopEmitter = new DoWhileLoopEmitter(this);
forLoopEmitter = new ForLoopEmitter(this);
interationFlowEmitter = new IterationFlowEmitter(this);
+ statementEmitter = new StatementEmitter(this);
sourceMapDirectiveEmitter = new SourceMapDirectiveEmitter(this);
}
@@ -255,6 +258,11 @@ public class JSEmitter extends ASEmitter implements IJSEmitter
{
ternaryOperatorEmitter.emit(node);
}
+ @Override
+ public void emitStatement(IASNode node)
+ {
+ statementEmitter.emit(node);
+ }
@Override
public void emitIf(IIfNode node)
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/584f4337/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/ClassEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/ClassEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/ClassEmitter.java
index 6bf01b7..fe0bc7e 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/ClassEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/ClassEmitter.java
@@ -105,7 +105,9 @@ public class ClassEmitter extends JSSubEmitter implements
writeNewline();
writeNewline();
getEmitter().emitField((IVariableNode) dnode);
+ startMapping(dnode, dnode);
write(ASEmitterTokens.SEMICOLON);
+ endMapping(dnode);
}
else if (dnode.getNodeID() == ASTNodeID.FunctionID)
{
@@ -135,7 +137,9 @@ public class ClassEmitter extends JSSubEmitter implements
writeNewline();
writeNewline();
getEmitter().emitField((IVariableNode) dnode);
+ startMapping(dnode, dnode);
write(ASEmitterTokens.SEMICOLON);
+ endMapping(dnode);
}
}
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/584f4337/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/StatementEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/StatementEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/StatementEmitter.java
new file mode 100644
index 0000000..7cf897c
--- /dev/null
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/StatementEmitter.java
@@ -0,0 +1,55 @@
+package org.apache.flex.compiler.internal.codegen.js.jx;
+
+import org.apache.flex.compiler.codegen.ISubEmitter;
+import org.apache.flex.compiler.codegen.js.IJSEmitter;
+import org.apache.flex.compiler.internal.codegen.as.ASEmitterTokens;
+import org.apache.flex.compiler.internal.codegen.js.JSSubEmitter;
+import org.apache.flex.compiler.tree.ASTNodeID;
+import org.apache.flex.compiler.tree.as.IASNode;
+import org.apache.flex.compiler.tree.as.IStatementNode;
+
+public class StatementEmitter extends JSSubEmitter implements
+ ISubEmitter<IASNode>
+{
+ public StatementEmitter(IJSEmitter emitter)
+ {
+ super(emitter);
+ }
+
+ @Override
+ public void emit(IASNode node)
+ {
+ getWalker().walk(node);
+
+ // XXX (mschmalle) this should be in the after handler?
+ if (node.getParent().getNodeID() != ASTNodeID.LabledStatementID
+ && node.getNodeID() != ASTNodeID.ConfigBlockID
+ && !(node instanceof IStatementNode))
+ {
+ startMapping(node, node);
+ write(ASEmitterTokens.SEMICOLON);
+ endMapping(node);
+ }
+
+ if (!isLastStatement(node))
+ writeNewline();
+ }
+
+ protected static boolean isLastStatement(IASNode node)
+ {
+ return getChildIndex(node.getParent(), node) == node.getParent()
+ .getChildCount() - 1;
+ }
+
+ // this is not fair that we have to do this if (i < len - 1)
+ private static int getChildIndex(IASNode parent, IASNode node)
+ {
+ final int len = parent.getChildCount();
+ for (int i = 0; i < len; i++)
+ {
+ if (parent.getChild(i) == node)
+ return i;
+ }
+ return -1;
+ }
+}
[4/6] git commit: [flex-falcon] [refs/heads/develop] - added source
maps for for loop, and renamed emitters for while and do-while loops
Posted by jo...@apache.org.
added source maps for for loop, and renamed emitters for while and do-while loops
Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/c759afdf
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/c759afdf
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/c759afdf
Branch: refs/heads/develop
Commit: c759afdfc4f3ac1128b7a0d7a08dbf40b2b0dfa3
Parents: d89a0b2
Author: Josh Tynjala <jo...@apache.org>
Authored: Fri Apr 8 13:55:45 2016 -0700
Committer: Josh Tynjala <jo...@apache.org>
Committed: Fri Apr 8 13:55:45 2016 -0700
----------------------------------------------------------------------
.../js/sourcemaps/TestSourceMapStatements.java | 69 ++++++++++++++
.../compiler/internal/codegen/js/JSEmitter.java | 26 +++--
.../internal/codegen/js/jx/DoWhileEmitter.java | 71 --------------
.../codegen/js/jx/DoWhileLoopEmitter.java | 71 ++++++++++++++
.../internal/codegen/js/jx/ForLoopEmitter.java | 99 ++++++++++++++++++++
.../internal/codegen/js/jx/WhileEmitter.java | 61 ------------
.../codegen/js/jx/WhileLoopEmitter.java | 61 ++++++++++++
7 files changed, 318 insertions(+), 140 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c759afdf/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/sourcemaps/TestSourceMapStatements.java
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/sourcemaps/TestSourceMapStatements.java b/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/sourcemaps/TestSourceMapStatements.java
index 713c3cf..3c25d07 100644
--- a/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/sourcemaps/TestSourceMapStatements.java
+++ b/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/sourcemaps/TestSourceMapStatements.java
@@ -3,6 +3,7 @@ package org.apache.flex.compiler.internal.codegen.js.sourcemaps;
import org.apache.flex.compiler.driver.IBackend;
import org.apache.flex.compiler.internal.driver.js.flexjs.FlexJSBackend;
import org.apache.flex.compiler.internal.test.SourceMapTestBase;
+import org.apache.flex.compiler.tree.as.IForLoopNode;
import org.apache.flex.compiler.tree.as.IVariableNode;
import org.junit.Test;
@@ -95,6 +96,74 @@ public class TestSourceMapStatements extends SourceMapTestBase
assertMapping(node, 0, 35, 0, 89, 0, 91); // 42
}
+ //----------------------------------
+ // for () { }
+ //----------------------------------
+
+ @Test
+ public void testVisitFor_1a()
+ {
+ IForLoopNode node = (IForLoopNode) getNode(
+ "for (var i:int = 0; i < len; i++) { break; }",
+ IForLoopNode.class);
+ asBlockWalker.visitForLoop(node);
+ //for (var /** @type {number} */ i = 0; i < len; i++) {\n break;\n}
+ assertMapping(node, 0, 0, 0, 0, 0, 5); // for (
+ assertMapping(node, 0, 18, 0, 36, 0, 38); // ;
+ assertMapping(node, 0, 27, 0, 45, 0, 47); // ;
+ assertMapping(node, 0, 32, 0, 50, 0, 52); // )
+ }
+
+ @Test
+ public void testVisitFor_1b()
+ {
+ IForLoopNode node = (IForLoopNode) getNode(
+ "for (var i:int = 0; i < len; i++) break;", IForLoopNode.class);
+ asBlockWalker.visitForLoop(node);
+ //for (var /** @type {number} */ i = 0; i < len; i++)\n break;
+ assertMapping(node, 0, 0, 0, 0, 0, 5); // for (
+ assertMapping(node, 0, 18, 0, 36, 0, 38); // ;
+ assertMapping(node, 0, 27, 0, 45, 0, 47); // ;
+ assertMapping(node, 0, 32, 0, 50, 0, 51); // )
+ }
+
+ @Test
+ public void testVisitFor_2()
+ {
+ IForLoopNode node = (IForLoopNode) getNode("for (;;) { break; }",
+ IForLoopNode.class);
+ asBlockWalker.visitForLoop(node);
+ //for (;;) {\n break;\n}
+ assertMapping(node, 0, 0, 0, 0, 0, 5); // for (
+ assertMapping(node, 0, 5, 0, 5, 0, 6); // ;
+ assertMapping(node, 0, 6, 0, 6, 0, 7); // ;
+ assertMapping(node, 0, 7, 0, 7, 0, 9); // )
+ }
+
+ @Test
+ public void testVisitForIn_1()
+ {
+ IForLoopNode node = (IForLoopNode) getNode(
+ "for (var i:int in obj) { break; }", IForLoopNode.class);
+ asBlockWalker.visitForLoop(node);
+ //for (var /** @type {number} */ i in obj) {\n break;\n}
+ assertMapping(node, 0, 0, 0, 0, 0, 5); // for (
+ assertMapping(node, 0, 14, 0, 32, 0, 36); // in
+ assertMapping(node, 0, 21, 0, 39, 0, 41); // )
+ }
+
+ @Test
+ public void testVisitForIn_1a()
+ {
+ IForLoopNode node = (IForLoopNode) getNode(
+ "for (var i:int in obj) break; ", IForLoopNode.class);
+ asBlockWalker.visitForLoop(node);
+ //for (var /** @type {number} */ i in obj)\n break;
+ assertMapping(node, 0, 0, 0, 0, 0, 5); // for (
+ assertMapping(node, 0, 14, 0, 32, 0, 36); // in
+ assertMapping(node, 0, 21, 0, 39, 0, 40); // )
+ }
+
protected IBackend createBackend()
{
return new FlexJSBackend();
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c759afdf/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/JSEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/JSEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/JSEmitter.java
index 589cbaf..65a8e63 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/JSEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/JSEmitter.java
@@ -30,8 +30,9 @@ import org.apache.flex.compiler.common.ISourceLocation;
import org.apache.flex.compiler.definitions.ITypeDefinition;
import org.apache.flex.compiler.internal.codegen.as.ASEmitter;
import org.apache.flex.compiler.internal.codegen.as.ASEmitterTokens;
-import org.apache.flex.compiler.internal.codegen.js.jx.DoWhileEmitter;
+import org.apache.flex.compiler.internal.codegen.js.jx.DoWhileLoopEmitter;
import org.apache.flex.compiler.internal.codegen.js.jx.DynamicAccessEmitter;
+import org.apache.flex.compiler.internal.codegen.js.jx.ForLoopEmitter;
import org.apache.flex.compiler.internal.codegen.js.jx.FunctionCallArgumentsEmitter;
import org.apache.flex.compiler.internal.codegen.js.jx.IfEmitter;
import org.apache.flex.compiler.internal.codegen.js.jx.IterationFlowEmitter;
@@ -45,13 +46,14 @@ import org.apache.flex.compiler.internal.codegen.js.jx.ReturnEmitter;
import org.apache.flex.compiler.internal.codegen.js.jx.SourceMapDirectiveEmitter;
import org.apache.flex.compiler.internal.codegen.js.jx.TernaryOperatorEmitter;
import org.apache.flex.compiler.internal.codegen.js.jx.UnaryOperatorEmitter;
-import org.apache.flex.compiler.internal.codegen.js.jx.WhileEmitter;
+import org.apache.flex.compiler.internal.codegen.js.jx.WhileLoopEmitter;
import org.apache.flex.compiler.internal.codegen.js.utils.EmitterUtils;
import org.apache.flex.compiler.internal.tree.as.FunctionNode;
import org.apache.flex.compiler.tree.as.IASNode;
import org.apache.flex.compiler.tree.as.IContainerNode;
import org.apache.flex.compiler.tree.as.IDefinitionNode;
import org.apache.flex.compiler.tree.as.IDynamicAccessNode;
+import org.apache.flex.compiler.tree.as.IForLoopNode;
import org.apache.flex.compiler.tree.as.IFunctionNode;
import org.apache.flex.compiler.tree.as.IFunctionObjectNode;
import org.apache.flex.compiler.tree.as.IIfNode;
@@ -89,8 +91,9 @@ public class JSEmitter extends ASEmitter implements IJSEmitter
public TernaryOperatorEmitter ternaryOperatorEmitter;
public MemberKeywordEmitter memberKeywordEmitter;
public IfEmitter ifEmitter;
- public WhileEmitter whileEmitter;
- public DoWhileEmitter doWhileEmitter;
+ public WhileLoopEmitter whileLoopEmitter;
+ public DoWhileLoopEmitter doWhileLoopEmitter;
+ public ForLoopEmitter forLoopEmitter;
public IterationFlowEmitter interationFlowEmitter;
public SourceMapDirectiveEmitter sourceMapDirectiveEmitter;
@@ -130,8 +133,9 @@ public class JSEmitter extends ASEmitter implements IJSEmitter
ternaryOperatorEmitter = new TernaryOperatorEmitter(this);
memberKeywordEmitter = new MemberKeywordEmitter(this);
ifEmitter = new IfEmitter(this);
- whileEmitter = new WhileEmitter(this);
- doWhileEmitter = new DoWhileEmitter(this);
+ whileLoopEmitter = new WhileLoopEmitter(this);
+ doWhileLoopEmitter = new DoWhileLoopEmitter(this);
+ forLoopEmitter = new ForLoopEmitter(this);
interationFlowEmitter = new IterationFlowEmitter(this);
sourceMapDirectiveEmitter = new SourceMapDirectiveEmitter(this);
}
@@ -261,13 +265,19 @@ public class JSEmitter extends ASEmitter implements IJSEmitter
@Override
public void emitWhileLoop(IWhileLoopNode node)
{
- whileEmitter.emit(node);
+ whileLoopEmitter.emit(node);
}
@Override
public void emitDoLoop(IWhileLoopNode node)
{
- doWhileEmitter.emit(node);
+ doWhileLoopEmitter.emit(node);
+ }
+
+ @Override
+ public void emitForLoop(IForLoopNode node)
+ {
+ forLoopEmitter.emit(node);
}
@Override
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c759afdf/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/DoWhileEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/DoWhileEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/DoWhileEmitter.java
deleted file mode 100644
index 4dfafac..0000000
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/DoWhileEmitter.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package org.apache.flex.compiler.internal.codegen.js.jx;
-
-import org.apache.flex.compiler.codegen.ISubEmitter;
-import org.apache.flex.compiler.codegen.js.IJSEmitter;
-import org.apache.flex.compiler.internal.codegen.as.ASEmitterTokens;
-import org.apache.flex.compiler.internal.codegen.js.JSSubEmitter;
-import org.apache.flex.compiler.internal.codegen.js.utils.EmitterUtils;
-import org.apache.flex.compiler.tree.as.IASNode;
-import org.apache.flex.compiler.tree.as.IContainerNode;
-import org.apache.flex.compiler.tree.as.IWhileLoopNode;
-
-public class DoWhileEmitter extends JSSubEmitter implements
- ISubEmitter<IWhileLoopNode>
-{
- public DoWhileEmitter(IJSEmitter emitter)
- {
- super(emitter);
- }
-
- @Override
- public void emit(IWhileLoopNode node)
- {
- IContainerNode cnode = (IContainerNode) node.getChild(0);
-
- startMapping(node);
- write(ASEmitterTokens.DO);
- if (!EmitterUtils.isImplicit(cnode))
- write(ASEmitterTokens.SPACE);
- endMapping(node);
-
- IASNode statementContents = node.getStatementContentsNode();
- getWalker().walk(statementContents);
-
- IASNode conditionalExpressionNode = node.getConditionalExpressionNode();
- startMapping(node, statementContents);
- if (!EmitterUtils.isImplicit(cnode))
- write(ASEmitterTokens.SPACE);
- else
- writeNewline(); // TODO (mschmalle) there is something wrong here, block should NL
- write(ASEmitterTokens.WHILE);
- write(ASEmitterTokens.SPACE);
- write(ASEmitterTokens.PAREN_OPEN);
- endMapping(node);
-
- getWalker().walk(conditionalExpressionNode);
-
- startMapping(node, conditionalExpressionNode);
- write(ASEmitterTokens.PAREN_CLOSE);
- write(ASEmitterTokens.SEMICOLON);
- endMapping(node);
- }
-}
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c759afdf/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/DoWhileLoopEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/DoWhileLoopEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/DoWhileLoopEmitter.java
new file mode 100644
index 0000000..e087bcd
--- /dev/null
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/DoWhileLoopEmitter.java
@@ -0,0 +1,71 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.flex.compiler.internal.codegen.js.jx;
+
+import org.apache.flex.compiler.codegen.ISubEmitter;
+import org.apache.flex.compiler.codegen.js.IJSEmitter;
+import org.apache.flex.compiler.internal.codegen.as.ASEmitterTokens;
+import org.apache.flex.compiler.internal.codegen.js.JSSubEmitter;
+import org.apache.flex.compiler.internal.codegen.js.utils.EmitterUtils;
+import org.apache.flex.compiler.tree.as.IASNode;
+import org.apache.flex.compiler.tree.as.IContainerNode;
+import org.apache.flex.compiler.tree.as.IWhileLoopNode;
+
+public class DoWhileLoopEmitter extends JSSubEmitter implements
+ ISubEmitter<IWhileLoopNode>
+{
+ public DoWhileLoopEmitter(IJSEmitter emitter)
+ {
+ super(emitter);
+ }
+
+ @Override
+ public void emit(IWhileLoopNode node)
+ {
+ IContainerNode cnode = (IContainerNode) node.getChild(0);
+
+ startMapping(node);
+ write(ASEmitterTokens.DO);
+ if (!EmitterUtils.isImplicit(cnode))
+ write(ASEmitterTokens.SPACE);
+ endMapping(node);
+
+ IASNode statementContents = node.getStatementContentsNode();
+ getWalker().walk(statementContents);
+
+ IASNode conditionalExpressionNode = node.getConditionalExpressionNode();
+ startMapping(node, statementContents);
+ if (!EmitterUtils.isImplicit(cnode))
+ write(ASEmitterTokens.SPACE);
+ else
+ writeNewline(); // TODO (mschmalle) there is something wrong here, block should NL
+ write(ASEmitterTokens.WHILE);
+ write(ASEmitterTokens.SPACE);
+ write(ASEmitterTokens.PAREN_OPEN);
+ endMapping(node);
+
+ getWalker().walk(conditionalExpressionNode);
+
+ startMapping(node, conditionalExpressionNode);
+ write(ASEmitterTokens.PAREN_CLOSE);
+ write(ASEmitterTokens.SEMICOLON);
+ endMapping(node);
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c759afdf/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/ForLoopEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/ForLoopEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/ForLoopEmitter.java
new file mode 100644
index 0000000..567b029
--- /dev/null
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/ForLoopEmitter.java
@@ -0,0 +1,99 @@
+package org.apache.flex.compiler.internal.codegen.js.jx;
+
+import org.apache.flex.compiler.codegen.ISubEmitter;
+import org.apache.flex.compiler.codegen.js.IJSEmitter;
+import org.apache.flex.compiler.internal.codegen.as.ASEmitterTokens;
+import org.apache.flex.compiler.internal.codegen.js.JSSubEmitter;
+import org.apache.flex.compiler.internal.codegen.js.utils.EmitterUtils;
+import org.apache.flex.compiler.tree.ASTNodeID;
+import org.apache.flex.compiler.tree.as.IASNode;
+import org.apache.flex.compiler.tree.as.IContainerNode;
+import org.apache.flex.compiler.tree.as.IForLoopNode;
+
+public class ForLoopEmitter extends JSSubEmitter implements
+ ISubEmitter<IForLoopNode>
+{
+ public ForLoopEmitter(IJSEmitter emitter)
+ {
+ super(emitter);
+ }
+
+ @Override
+ public void emit(IForLoopNode node)
+ {
+ IContainerNode xnode = (IContainerNode) node.getChild(1);
+
+ startMapping(node);
+ writeToken(ASEmitterTokens.FOR);
+ write(ASEmitterTokens.PAREN_OPEN);
+ endMapping(node);
+
+ IContainerNode cnode = node.getConditionalsContainerNode();
+ final IASNode node0 = cnode.getChild(0);
+ if (node0.getNodeID() == ASTNodeID.Op_InID)
+ {
+ //for(in)
+ getWalker().walk(cnode.getChild(0));
+ }
+ else //for(;;)
+ {
+ emitForStatements(cnode);
+ }
+
+ startMapping(node, cnode);
+ write(ASEmitterTokens.PAREN_CLOSE);
+ if (!EmitterUtils.isImplicit(xnode))
+ write(ASEmitterTokens.SPACE);
+ endMapping(node);
+
+ getWalker().walk(node.getStatementContentsNode());
+ }
+
+ protected void emitForStatements(IContainerNode node)
+ {
+ final IASNode node0 = node.getChild(0);
+ final IASNode node1 = node.getChild(1);
+ final IASNode node2 = node.getChild(2);
+
+ int column = node.getColumn();
+ // initializer
+ if (node0 != null)
+ {
+ getWalker().walk(node0);
+
+ if (node1.getNodeID() != ASTNodeID.NilID)
+ {
+ column += node0.getAbsoluteEnd() - node0.getAbsoluteStart();
+ }
+ startMapping(node, node.getLine(), column);
+ write(ASEmitterTokens.SEMICOLON);
+ column++;
+ if (node1.getNodeID() != ASTNodeID.NilID)
+ {
+ write(ASEmitterTokens.SPACE);
+ column++;
+ }
+ endMapping(node);
+ }
+ // condition or target
+ if (node1 != null)
+ {
+ getWalker().walk(node1);
+
+ if (node1.getNodeID() != ASTNodeID.NilID)
+ {
+ column += node1.getAbsoluteEnd() - node1.getAbsoluteStart();
+ }
+ startMapping(node, node.getLine(), column);
+ write(ASEmitterTokens.SEMICOLON);
+ if (node2.getNodeID() != ASTNodeID.NilID)
+ write(ASEmitterTokens.SPACE);
+ endMapping(node);
+ }
+ // iterator
+ if (node2 != null)
+ {
+ getWalker().walk(node2);
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c759afdf/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/WhileEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/WhileEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/WhileEmitter.java
deleted file mode 100644
index 8ff0e84..0000000
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/WhileEmitter.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package org.apache.flex.compiler.internal.codegen.js.jx;
-
-import org.apache.flex.compiler.codegen.ISubEmitter;
-import org.apache.flex.compiler.codegen.js.IJSEmitter;
-import org.apache.flex.compiler.internal.codegen.as.ASEmitterTokens;
-import org.apache.flex.compiler.internal.codegen.js.JSSubEmitter;
-import org.apache.flex.compiler.internal.codegen.js.utils.EmitterUtils;
-import org.apache.flex.compiler.tree.as.IASNode;
-import org.apache.flex.compiler.tree.as.IContainerNode;
-import org.apache.flex.compiler.tree.as.IWhileLoopNode;
-
-public class WhileEmitter extends JSSubEmitter implements
- ISubEmitter<IWhileLoopNode>
-{
- public WhileEmitter(IJSEmitter emitter)
- {
- super(emitter);
- }
-
- @Override
- public void emit(IWhileLoopNode node)
- {
- IContainerNode cnode = (IContainerNode) node.getChild(1);
-
- startMapping(node);
- writeToken(ASEmitterTokens.WHILE);
- write(ASEmitterTokens.PAREN_OPEN);
- endMapping(node);
-
- IASNode conditionalExpression = node.getConditionalExpressionNode();
- getWalker().walk(conditionalExpression);
-
- IASNode statementContentsNode = node.getStatementContentsNode();
- startMapping(node, conditionalExpression);
- write(ASEmitterTokens.PAREN_CLOSE);
- if (!EmitterUtils.isImplicit(cnode))
- write(ASEmitterTokens.SPACE);
- endMapping(node);
-
- getWalker().walk(statementContentsNode);
- }
-}
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c759afdf/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/WhileLoopEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/WhileLoopEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/WhileLoopEmitter.java
new file mode 100644
index 0000000..54f663d
--- /dev/null
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/WhileLoopEmitter.java
@@ -0,0 +1,61 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.flex.compiler.internal.codegen.js.jx;
+
+import org.apache.flex.compiler.codegen.ISubEmitter;
+import org.apache.flex.compiler.codegen.js.IJSEmitter;
+import org.apache.flex.compiler.internal.codegen.as.ASEmitterTokens;
+import org.apache.flex.compiler.internal.codegen.js.JSSubEmitter;
+import org.apache.flex.compiler.internal.codegen.js.utils.EmitterUtils;
+import org.apache.flex.compiler.tree.as.IASNode;
+import org.apache.flex.compiler.tree.as.IContainerNode;
+import org.apache.flex.compiler.tree.as.IWhileLoopNode;
+
+public class WhileLoopEmitter extends JSSubEmitter implements
+ ISubEmitter<IWhileLoopNode>
+{
+ public WhileLoopEmitter(IJSEmitter emitter)
+ {
+ super(emitter);
+ }
+
+ @Override
+ public void emit(IWhileLoopNode node)
+ {
+ IContainerNode cnode = (IContainerNode) node.getChild(1);
+
+ startMapping(node);
+ writeToken(ASEmitterTokens.WHILE);
+ write(ASEmitterTokens.PAREN_OPEN);
+ endMapping(node);
+
+ IASNode conditionalExpression = node.getConditionalExpressionNode();
+ getWalker().walk(conditionalExpression);
+
+ IASNode statementContentsNode = node.getStatementContentsNode();
+ startMapping(node, conditionalExpression);
+ write(ASEmitterTokens.PAREN_CLOSE);
+ if (!EmitterUtils.isImplicit(cnode))
+ write(ASEmitterTokens.SPACE);
+ endMapping(node);
+
+ getWalker().walk(statementContentsNode);
+ }
+}
[3/6] git commit: [flex-falcon] [refs/heads/develop] - compiler:
fixed column of NodeBase when starting after a token
Posted by jo...@apache.org.
compiler: fixed column of NodeBase when starting after a token
Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/d89a0b29
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/d89a0b29
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/d89a0b29
Branch: refs/heads/develop
Commit: d89a0b29c7e6905677f6b92c35c239e72b16f5d2
Parents: 23f83ec
Author: Josh Tynjala <jo...@apache.org>
Authored: Fri Apr 8 11:56:21 2016 -0700
Committer: Josh Tynjala <jo...@apache.org>
Committed: Fri Apr 8 11:56:21 2016 -0700
----------------------------------------------------------------------
.../src/org/apache/flex/compiler/internal/tree/as/NodeBase.java | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/d89a0b29/compiler/src/org/apache/flex/compiler/internal/tree/as/NodeBase.java
----------------------------------------------------------------------
diff --git a/compiler/src/org/apache/flex/compiler/internal/tree/as/NodeBase.java b/compiler/src/org/apache/flex/compiler/internal/tree/as/NodeBase.java
index a6ca29a..be0510d 100644
--- a/compiler/src/org/apache/flex/compiler/internal/tree/as/NodeBase.java
+++ b/compiler/src/org/apache/flex/compiler/internal/tree/as/NodeBase.java
@@ -335,7 +335,10 @@ public abstract class NodeBase extends SourceLocation implements IASNode
public void startAfter(Token token)
{
if (token instanceof ISourceLocation)
- startAfter((ISourceLocation)token);
+ {
+ startAfter((ISourceLocation) token);
+ setColumn(getColumn() + token.getText().length());
+ }
}
/**
[6/6] git commit: [flex-falcon] [refs/heads/develop] - compiler.jx:
JSSubEmitters no longer call getEmitter() before startMapping() or
endMapping() (just migrating some of the older code to the new style)
Posted by jo...@apache.org.
compiler.jx: JSSubEmitters no longer call getEmitter() before startMapping() or endMapping() (just migrating some of the older code to the new style)
Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/4cc081b0
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/4cc081b0
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/4cc081b0
Branch: refs/heads/develop
Commit: 4cc081b01c8a86e4408e28d018ab2e14876151fe
Parents: 584f433
Author: Josh Tynjala <jo...@apache.org>
Authored: Fri Apr 8 14:17:56 2016 -0700
Committer: Josh Tynjala <jo...@apache.org>
Committed: Fri Apr 8 14:17:56 2016 -0700
----------------------------------------------------------------------
.../internal/codegen/js/jx/AsIsEmitter.java | 22 ++++++++++----------
.../codegen/js/jx/BinaryOperatorEmitter.java | 12 +++++------
.../internal/codegen/js/jx/FieldEmitter.java | 8 +++----
.../codegen/js/jx/FunctionCallEmitter.java | 12 +++++------
.../internal/codegen/js/jx/LiteralEmitter.java | 4 ++--
.../codegen/js/jx/MemberAccessEmitter.java | 8 +++----
.../internal/codegen/js/jx/MethodEmitter.java | 8 +++----
.../codegen/js/jx/VarDeclarationEmitter.java | 14 ++++++-------
8 files changed, 44 insertions(+), 44 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/4cc081b0/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/AsIsEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/AsIsEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/AsIsEmitter.java
index 36e2cd0..793b14f 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/AsIsEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/AsIsEmitter.java
@@ -136,11 +136,11 @@ public class AsIsEmitter extends JSSubEmitter
if (node instanceof IBinaryOperatorNode)
{
IBinaryOperatorNode binaryOperatorNode = (IBinaryOperatorNode) node;
- getEmitter().startMapping(node, binaryOperatorNode.getLeftOperandNode());
+ startMapping(node, binaryOperatorNode.getLeftOperandNode());
}
else
{
- getEmitter().startMapping(node);
+ startMapping(node);
}
write(JSFlexJSEmitterTokens.LANGUAGE_QNAME);
write(ASEmitterTokens.MEMBER_ACCESS);
@@ -151,26 +151,26 @@ public class AsIsEmitter extends JSSubEmitter
write(ASEmitterTokens.AS);
write(ASEmitterTokens.PAREN_OPEN);
- getEmitter().endMapping(node);
+ endMapping(node);
getWalker().walk(left);
if (node instanceof IBinaryOperatorNode)
{
IBinaryOperatorNode binaryOperatorNode = (IBinaryOperatorNode) node;
- getEmitter().startMapping(node, binaryOperatorNode.getLeftOperandNode());
+ startMapping(node, binaryOperatorNode.getLeftOperandNode());
}
else
{
- getEmitter().startMapping(node);
+ startMapping(node);
}
writeToken(ASEmitterTokens.COMMA);
- getEmitter().endMapping(node);
+ endMapping(node);
if (dnode instanceof IClassDefinition)
{
- getEmitter().startMapping(right);
+ startMapping(right);
write(getEmitter().formatQualifiedName(dnode.getQualifiedName()));
- getEmitter().endMapping(right);
+ endMapping(right);
}
else
{
@@ -180,11 +180,11 @@ public class AsIsEmitter extends JSSubEmitter
if (node instanceof IBinaryOperatorNode)
{
IBinaryOperatorNode binaryOperatorNode = (IBinaryOperatorNode) node;
- getEmitter().startMapping(node, binaryOperatorNode.getLeftOperandNode());
+ startMapping(node, binaryOperatorNode.getLeftOperandNode());
}
else
{
- getEmitter().startMapping(node);
+ startMapping(node);
}
if (coercion)
{
@@ -193,7 +193,7 @@ public class AsIsEmitter extends JSSubEmitter
}
write(ASEmitterTokens.PAREN_CLOSE);
- getEmitter().endMapping(node);
+ endMapping(node);
}
}
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/4cc081b0/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/BinaryOperatorEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/BinaryOperatorEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/BinaryOperatorEmitter.java
index d97c20a..6e5cc75 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/BinaryOperatorEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/BinaryOperatorEmitter.java
@@ -71,10 +71,10 @@ public class BinaryOperatorEmitter extends JSSubEmitter implements
{
getWalker().walk(node.getLeftOperandNode());
- getEmitter().startMapping(node, node.getLeftOperandNode());
+ startMapping(node, node.getLeftOperandNode());
write(ASEmitterTokens.SPACE);
writeToken(ASEmitterTokens.INSTANCEOF);
- getEmitter().endMapping(node);
+ endMapping(node);
IDefinition dnode = (node.getRightOperandNode())
.resolve(getProject());
@@ -330,7 +330,7 @@ public class BinaryOperatorEmitter extends JSSubEmitter implements
{
getWalker().walk(node.getLeftOperandNode());
- getEmitter().startMapping(node, node.getLeftOperandNode());
+ startMapping(node, node.getLeftOperandNode());
if (id != ASTNodeID.Op_CommaID)
write(ASEmitterTokens.SPACE);
@@ -343,10 +343,10 @@ public class BinaryOperatorEmitter extends JSSubEmitter implements
.getLeftOperandNode();
writeToken(ASEmitterTokens.EQUAL);
- getEmitter().endMapping(node);
+ endMapping(node);
write(lnode.getName());
- getEmitter().startMapping(node, node.getLeftOperandNode());
+ startMapping(node, node.getLeftOperandNode());
write(ASEmitterTokens.SPACE);
write((id == ASTNodeID.Op_LogicalAndAssignID) ? ASEmitterTokens.LOGICAL_AND
: ASEmitterTokens.LOGICAL_OR);
@@ -357,7 +357,7 @@ public class BinaryOperatorEmitter extends JSSubEmitter implements
}
write(ASEmitterTokens.SPACE);
- getEmitter().endMapping(node);
+ endMapping(node);
/*
IDefinition definition = node.getRightOperandNode().resolve(getProject());
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/4cc081b0/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/FieldEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/FieldEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/FieldEmitter.java
index 8e03b91..402751f 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/FieldEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/FieldEmitter.java
@@ -84,11 +84,11 @@ public class FieldEmitter extends JSSubEmitter implements
if (definition == null)
definition = ndef.getContainingScope().getDefinition();
- getEmitter().startMapping(node.getNameExpressionNode());
+ startMapping(node.getNameExpressionNode());
write(getEmitter().formatQualifiedName(definition.getQualifiedName())
+ ASEmitterTokens.MEMBER_ACCESS.getToken() + root);
write(node.getName());
- getEmitter().endMapping(node.getNameExpressionNode());
+ endMapping(node.getNameExpressionNode());
}
if (node.getNodeID() == ASTNodeID.BindableVariableID)
@@ -101,10 +101,10 @@ public class FieldEmitter extends JSSubEmitter implements
if (vnode != null &&
(ndef.isStatic() || EmitterUtils.isScalar(vnode) || isPackageOrFileMember))
{
- getEmitter().startMapping(node);
+ startMapping(node);
write(ASEmitterTokens.SPACE);
writeToken(ASEmitterTokens.EQUAL);
- getEmitter().endMapping(node);
+ endMapping(node);
getEmitter().getWalker().walk(vnode);
}
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/4cc081b0/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/FunctionCallEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/FunctionCallEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/FunctionCallEmitter.java
index ed55481..f1f1923 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/FunctionCallEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/FunctionCallEmitter.java
@@ -76,9 +76,9 @@ public class FunctionCallEmitter extends JSSubEmitter implements ISubEmitter<IFu
{
if (!(node.getChild(1) instanceof VectorLiteralNode))
{
- getEmitter().startMapping(node.getNewKeywordNode());
+ startMapping(node.getNewKeywordNode());
writeToken(ASEmitterTokens.NEW);
- getEmitter().endMapping(node.getNewKeywordNode());
+ endMapping(node.getNewKeywordNode());
}
else
{
@@ -113,9 +113,9 @@ public class FunctionCallEmitter extends JSSubEmitter implements ISubEmitter<IFu
// all new calls to a class should be fully qualified names
if (def instanceof ClassDefinition)
{
- getEmitter().startMapping(nameNode);
+ startMapping(nameNode);
write(getEmitter().formatQualifiedName(def.getQualifiedName()));
- getEmitter().endMapping(nameNode);
+ endMapping(nameNode);
}
else
{
@@ -144,12 +144,12 @@ public class FunctionCallEmitter extends JSSubEmitter implements ISubEmitter<IFu
ICompilerProject project = this.getProject();
if (project instanceof FlexJSProject)
((FlexJSProject) project).needLanguage = true;
- getEmitter().startMapping(node.getNameNode());
+ startMapping(node.getNameNode());
write(JSFlexJSEmitterTokens.LANGUAGE_QNAME);
write(ASEmitterTokens.MEMBER_ACCESS);
if (isInt)
write(JSFlexJSEmitterTokens.UNDERSCORE);
- getEmitter().endMapping(node.getNameNode());
+ endMapping(node.getNameNode());
}
else if (def != null && def.getBaseName().equals("sortOn"))
{
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/4cc081b0/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/LiteralEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/LiteralEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/LiteralEmitter.java
index e3827e6..a332f23 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/LiteralEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/LiteralEmitter.java
@@ -122,9 +122,9 @@ public class LiteralEmitter extends JSSubEmitter implements
if (!isWritten)
{
- getEmitter().startMapping(node);
+ startMapping(node);
write(s);
- getEmitter().endMapping(node);
+ endMapping(node);
}
}
}
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/4cc081b0/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/MemberAccessEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/MemberAccessEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/MemberAccessEmitter.java
index 1756487..7088431 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/MemberAccessEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/MemberAccessEmitter.java
@@ -246,9 +246,9 @@ public class MemberAccessEmitter extends JSSubEmitter implements
continueWalk = writeLeftSide(node, leftNode, rightNode);
if (continueWalk)
{
- getEmitter().startMapping(node, node.getLeftOperandNode());
+ startMapping(node, node.getLeftOperandNode());
write(node.getOperator().getOperatorText());
- getEmitter().endMapping(node);
+ endMapping(node);
}
}
@@ -313,9 +313,9 @@ public class MemberAccessEmitter extends JSSubEmitter implements
}
else
{
- getEmitter().startMapping(leftNode);
+ startMapping(leftNode);
write(ASEmitterTokens.THIS);
- getEmitter().endMapping(leftNode);
+ endMapping(leftNode);
}
return true;
}
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/4cc081b0/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/MethodEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/MethodEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/MethodEmitter.java
index ee2b499..b624621 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/MethodEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/MethodEmitter.java
@@ -74,7 +74,7 @@ public class MethodEmitter extends JSSubEmitter implements
}
else
{
- getEmitter().startMapping(node.getNameExpressionNode());
+ startMapping(node.getNameExpressionNode());
ITypeDefinition typeDef = EmitterUtils.getTypeDefinition(node);
if (typeDef != null)
{
@@ -97,14 +97,14 @@ public class MethodEmitter extends JSSubEmitter implements
{
fjs.emitMemberName(node);
}
- getEmitter().endMapping(node.getNameExpressionNode());
+ endMapping(node.getNameExpressionNode());
}
- getEmitter().startMapping(node);
+ startMapping(node);
write(ASEmitterTokens.SPACE);
writeToken(ASEmitterTokens.EQUAL);
write(ASEmitterTokens.FUNCTION);
- getEmitter().endMapping(node);
+ endMapping(node);
fjs.emitParameters(node.getParametersContainerNode());
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/4cc081b0/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/VarDeclarationEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/VarDeclarationEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/VarDeclarationEmitter.java
index 322c778..f43b288 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/VarDeclarationEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/VarDeclarationEmitter.java
@@ -56,7 +56,7 @@ public class VarDeclarationEmitter extends JSSubEmitter implements
IExpressionNode variableTypeNode = node.getVariableTypeNode();
if(variableTypeNode.getLine() >= 0)
{
- getEmitter().startMapping(variableTypeNode,
+ startMapping(variableTypeNode,
variableTypeNode.getLine(),
variableTypeNode.getColumn() - 1); //include the :
}
@@ -67,7 +67,7 @@ public class VarDeclarationEmitter extends JSSubEmitter implements
//the compiler generates a node for type *.
//in this case, put it at the end of the name expression.
IExpressionNode nameExpressionNode = node.getNameExpressionNode();
- getEmitter().startMapping(variableTypeNode, nameExpressionNode.getLine(),
+ startMapping(variableTypeNode, nameExpressionNode.getLine(),
nameExpressionNode.getColumn() + nameExpressionNode.getAbsoluteEnd() - nameExpressionNode.getAbsoluteStart());
}
IExpressionNode avnode = node.getAssignedValueNode();
@@ -85,7 +85,7 @@ public class VarDeclarationEmitter extends JSSubEmitter implements
{
fjs.getDocEmitter().emitVarDoc(node, null, getWalker().getProject());
}
- getEmitter().endMapping(variableTypeNode);
+ endMapping(variableTypeNode);
if (!(node instanceof ChainedVariableNode) && node.isConst())
{
@@ -95,10 +95,10 @@ public class VarDeclarationEmitter extends JSSubEmitter implements
fjs.emitDeclarationName(node);
if (avnode != null && !(avnode instanceof IEmbedNode))
{
- getEmitter().startMapping(node, node.getVariableTypeNode());
+ startMapping(node, node.getVariableTypeNode());
write(ASEmitterTokens.SPACE);
writeToken(ASEmitterTokens.EQUAL);
- getEmitter().endMapping(node);
+ endMapping(node);
fjs.emitAssignedValue(avnode);
}
@@ -111,9 +111,9 @@ public class VarDeclarationEmitter extends JSSubEmitter implements
IASNode child = node.getChild(i);
if (child instanceof ChainedVariableNode)
{
- getEmitter().startMapping(node, node.getChild(i - 1));
+ startMapping(node, node.getChild(i - 1));
writeToken(ASEmitterTokens.COMMA);
- getEmitter().endMapping(node);
+ endMapping(node);
fjs.emitVarDeclaration((IVariableNode) child);
}
}