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:23 UTC
[1/8] git commit: [flex-falcon] [refs/heads/develop] - use tokens so
I don't keep mistyping
Repository: flex-falcon
Updated Branches:
refs/heads/develop 4c07f5e89 -> 096bc8558
use tokens so I don't keep mistyping
Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/5354db83
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/5354db83
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/5354db83
Branch: refs/heads/develop
Commit: 5354db83c484f0cde1cb4c6738e708400eb45a59
Parents: 4c07f5e
Author: Alex Harui <ah...@apache.org>
Authored: Wed Nov 12 20:46:13 2014 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Wed Nov 12 20:46:13 2014 -0800
----------------------------------------------------------------------
.../internal/codegen/mxml/flexjs/MXMLFlexJSEmitter.java | 4 ++--
.../internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java | 5 +++--
.../internal/driver/js/flexjs/JSCSSCompilationSession.java | 3 ++-
.../org/apache/flex/compiler/internal/graph/GoogDepsWriter.java | 5 +++--
.../apache/flex/compiler/internal/graph/VF2JSDepsWriter.java | 3 ++-
5 files changed, 12 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/5354db83/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 64d1378..4eeea84 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
@@ -1557,7 +1557,7 @@ public class MXMLFlexJSEmitter extends MXMLEmitter implements
String s = ((MXMLFlexJSBlockWalker)getMXMLWalker()).encodedCSS;
if (!s.isEmpty())
{
- int reqidx = s.indexOf("goog.require");
+ int reqidx = s.indexOf(JSGoogEmitterTokens.GOOG_REQUIRE.getToken());
if (reqidx != -1)
s = s.substring(0, reqidx - 1);
@@ -1662,7 +1662,7 @@ public class MXMLFlexJSEmitter extends MXMLEmitter implements
String s = ((MXMLFlexJSBlockWalker)getMXMLWalker()).encodedCSS;
if (!s.isEmpty())
{
- int reqidx = s.indexOf("goog.require");
+ int reqidx = s.indexOf(JSGoogEmitterTokens.GOOG_REQUIRE.getToken());
if (reqidx != -1)
{
String reqs = s.substring(reqidx);
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/5354db83/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
index dff5d23..f0bb0dd 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
@@ -42,6 +42,7 @@ import org.apache.flex.compiler.clients.problems.ProblemQuery;
import org.apache.flex.compiler.codegen.js.IJSPublisher;
import org.apache.flex.compiler.config.Configuration;
import org.apache.flex.compiler.internal.codegen.js.JSSharedData;
+import org.apache.flex.compiler.internal.codegen.js.goog.JSGoogEmitterTokens;
import org.apache.flex.compiler.internal.codegen.js.goog.JSGoogPublisher;
import org.apache.flex.compiler.internal.driver.js.goog.JSGoogConfiguration;
import org.apache.flex.compiler.internal.graph.GoogDepsWriter;
@@ -401,13 +402,13 @@ public class MXMLFlexJSPublisher extends JSGoogPublisher implements
appendString.append(projectName);
appendString.append(".prototype.cssData = [");
String s = project.cssEncoding;
- int reqidx = s.indexOf("goog.require");
+ int reqidx = s.indexOf(JSGoogEmitterTokens.GOOG_REQUIRE.getToken());
if (reqidx != -1)
{
String reqs = s.substring(reqidx);
s = s.substring(0, reqidx - 1);
String fileData = readCode(new File(path));
- reqidx = fileData.indexOf("goog.require");
+ reqidx = fileData.indexOf(JSGoogEmitterTokens.GOOG_REQUIRE.getToken());
String after = fileData.substring(reqidx);
String before = fileData.substring(0, reqidx - 1);
s = before + reqs + after + appendString.toString() + s;
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/5354db83/compiler.jx/src/org/apache/flex/compiler/internal/driver/js/flexjs/JSCSSCompilationSession.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/driver/js/flexjs/JSCSSCompilationSession.java b/compiler.jx/src/org/apache/flex/compiler/internal/driver/js/flexjs/JSCSSCompilationSession.java
index 44cb3a0..7a518d2 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/driver/js/flexjs/JSCSSCompilationSession.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/driver/js/flexjs/JSCSSCompilationSession.java
@@ -29,6 +29,7 @@ import org.apache.flex.compiler.css.ICSSPropertyValue;
import org.apache.flex.compiler.css.ICSSRule;
import org.apache.flex.compiler.css.ICSSSelector;
import org.apache.flex.compiler.css.ICSSSelectorCondition;
+import org.apache.flex.compiler.internal.codegen.js.goog.JSGoogEmitterTokens;
import org.apache.flex.compiler.internal.css.CSSArrayPropertyValue;
import org.apache.flex.compiler.internal.css.CSSColorPropertyValue;
import org.apache.flex.compiler.internal.css.CSSFunctionCallPropertyValue;
@@ -56,7 +57,7 @@ public class JSCSSCompilationSession extends CSSCompilationSession
sb.append("];\n");
for (String r : requires)
{
- sb.append("goog.require('" + r + "');\n");
+ sb.append(JSGoogEmitterTokens.GOOG_REQUIRE.getToken() + "('" + r + "');\n");
}
return sb.toString();
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/5354db83/compiler.jx/src/org/apache/flex/compiler/internal/graph/GoogDepsWriter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/graph/GoogDepsWriter.java b/compiler.jx/src/org/apache/flex/compiler/internal/graph/GoogDepsWriter.java
index cde5681..26df899 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/graph/GoogDepsWriter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/graph/GoogDepsWriter.java
@@ -32,6 +32,7 @@ import java.util.Scanner;
import org.apache.commons.io.FileUtils;
import org.apache.flex.compiler.clients.problems.ProblemQuery;
+import org.apache.flex.compiler.internal.codegen.js.goog.JSGoogEmitterTokens;
import org.apache.flex.compiler.internal.driver.js.goog.JSGoogConfiguration;
import org.apache.flex.compiler.problems.FileNotFoundProblem;
@@ -175,7 +176,7 @@ public class GoogDepsWriter {
for (String line : fileLines)
{
- int c = line.indexOf("goog.require");
+ int c = line.indexOf(JSGoogEmitterTokens.GOOG_REQUIRE.getToken());
if (c > -1)
{
int c2 = line.indexOf(")");
@@ -338,7 +339,7 @@ public class GoogDepsWriter {
additionalHTML.add(s);
continue;
}
- int c = s.indexOf("goog.require");
+ int c = s.indexOf(JSGoogEmitterTokens.GOOG_REQUIRE.getToken());
if (c > -1)
{
int c2 = s.indexOf(")");
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/5354db83/compiler.jx/src/org/apache/flex/compiler/internal/graph/VF2JSDepsWriter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/graph/VF2JSDepsWriter.java b/compiler.jx/src/org/apache/flex/compiler/internal/graph/VF2JSDepsWriter.java
index 82251e7..b37f71a 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/graph/VF2JSDepsWriter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/graph/VF2JSDepsWriter.java
@@ -32,6 +32,7 @@ import java.util.Scanner;
import org.apache.commons.io.FileUtils;
import org.apache.flex.compiler.clients.problems.ProblemQuery;
+import org.apache.flex.compiler.internal.codegen.js.goog.JSGoogEmitterTokens;
import org.apache.flex.compiler.internal.driver.js.goog.JSGoogConfiguration;
import org.apache.flex.compiler.problems.FileNotFoundProblem;
@@ -338,7 +339,7 @@ public class VF2JSDepsWriter {
additionalHTML.add(s);
continue;
}
- int c = s.indexOf("goog.require");
+ int c = s.indexOf(JSGoogEmitterTokens.GOOG_REQUIRE.getToken());
if (c > -1)
{
int c2 = s.indexOf(")");
[5/8] git commit: [flex-falcon] [refs/heads/develop] - handle ++
Posted by ah...@apache.org.
handle ++
Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/6207b3c8
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/6207b3c8
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/6207b3c8
Branch: refs/heads/develop
Commit: 6207b3c8aa4149838d3d9d0451d066c91954a145
Parents: f6c099b
Author: Alex Harui <ah...@apache.org>
Authored: Fri Nov 14 07:58:22 2014 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Fri Nov 14 07:58:22 2014 -0800
----------------------------------------------------------------------
.../compiler/internal/codegen/as/ASEmitter.java | 6 ++-
.../internal/codegen/as/ASEmitterTokens.java | 2 +-
.../codegen/js/flexjs/JSFlexJSEmitter.java | 47 ++++++++++++++++++++
.../js/flexjs/JSFlexJSEmitterTokens.java | 4 ++
4 files changed, 57 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/6207b3c8/compiler.jx/src/org/apache/flex/compiler/internal/codegen/as/ASEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/as/ASEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/as/ASEmitter.java
index b84d1f2..9214d39 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/as/ASEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/as/ASEmitter.java
@@ -1465,11 +1465,15 @@ public class ASEmitter implements IASEmitter, IEmitter
public String stringifyNode(IASNode node)
{
+ boolean oldBufferWrite = isBufferWrite();
+ StringBuilder oldBuilder = this.builder;
+ this.builder = new StringBuilder();
setBufferWrite(true);
getWalker().walk(node);
String result = getBuilder().toString();
getBuilder().setLength(0);
- setBufferWrite(false);
+ this.builder = oldBuilder;
+ setBufferWrite(oldBufferWrite);
return result;
}
}
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/6207b3c8/compiler.jx/src/org/apache/flex/compiler/internal/codegen/as/ASEmitterTokens.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/as/ASEmitterTokens.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/as/ASEmitterTokens.java
index fc1f1c7..d783109 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/as/ASEmitterTokens.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/as/ASEmitterTokens.java
@@ -139,7 +139,7 @@ public enum ASEmitterTokens implements IEmitterTokens
// int TOKEN_OPERATOR_BITWISE_RIGHT_SHIFT = 104;
// int TOKEN_OPERATOR_BITWISE_UNSIGNED_RIGHT_SHIFT = 105;
MINUS("-"),
- // int TOKEN_OPERATOR_PLUS = 107;
+ PLUS("+"),
// int TOKEN_OPERATOR_DIVISION = 108;
// int TOKEN_OPERATOR_MODULO = 109;
// int TOKEN_OPERATOR_STAR = 110;
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/6207b3c8/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java
index e1c8758..7dbd74e 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java
@@ -81,6 +81,7 @@ import org.apache.flex.compiler.tree.as.IIdentifierNode;
import org.apache.flex.compiler.tree.as.IInterfaceNode;
import org.apache.flex.compiler.tree.as.ILanguageIdentifierNode;
import org.apache.flex.compiler.tree.as.ILiteralNode;
+import org.apache.flex.compiler.tree.as.IUnaryOperatorNode;
import org.apache.flex.compiler.tree.as.ILiteralNode.LiteralType;
import org.apache.flex.compiler.tree.as.IMemberAccessExpressionNode;
import org.apache.flex.compiler.tree.as.IParameterNode;
@@ -1696,5 +1697,51 @@ public class JSFlexJSEmitter extends JSGoogEmitter implements IJSFlexJSEmitter
write("E4XFilter");
write(ASEmitterTokens.SINGLE_QUOTE);
}
+ @Override
+ public void emitUnaryOperator(IUnaryOperatorNode node)
+ {
+ if (node.getNodeID() == ASTNodeID.Op_PreIncrID
+ || node.getNodeID() == ASTNodeID.Op_PreDecrID
+ || node.getNodeID() == ASTNodeID.Op_PostIncrID
+ || node.getNodeID() == ASTNodeID.Op_PostDecrID)
+ {
+ IExpressionNode opNode = node.getOperandNode();
+ String getString = stringifyNode(opNode);
+ int index = getString.lastIndexOf("get_");
+ if (index != -1)
+ {
+ write(JSFlexJSEmitterTokens.LANGUAGE_QNAME);
+ write(ASEmitterTokens.MEMBER_ACCESS);
+ if (node.getNodeID() == ASTNodeID.Op_PreIncrID)
+ write(JSFlexJSEmitterTokens.PREINCREMENT);
+ else if (node.getNodeID() == ASTNodeID.Op_PostIncrID)
+ write(JSFlexJSEmitterTokens.POSTINCREMENT);
+ else if (node.getNodeID() == ASTNodeID.Op_PreDecrID)
+ write(JSFlexJSEmitterTokens.PREDECREMENT);
+ else
+ write(JSFlexJSEmitterTokens.POSTDECREMENT);
+ write(ASEmitterTokens.PAREN_OPEN);
+ String obj = getString.substring(0, index - 1);
+ write(obj);
+ write(ASEmitterTokens.COMMA);
+ String prop = getString.substring(index + 4);
+ int endIndex = prop.indexOf(ASEmitterTokens.PAREN_OPEN.getToken());
+ prop = prop.substring(0, endIndex);
+ write(ASEmitterTokens.DOUBLE_QUOTE);
+ write(prop);
+ write(ASEmitterTokens.DOUBLE_QUOTE);
+ write(ASEmitterTokens.PAREN_CLOSE);
+ return;
+ }
+ else
+ {
+ write(ASEmitterTokens.PAREN_OPEN);
+ super.emitUnaryOperator(node);
+ write(ASEmitterTokens.PAREN_CLOSE);
+ return;
+ }
+ }
+ super.emitUnaryOperator(node);
+ }
}
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/6207b3c8/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitterTokens.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitterTokens.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitterTokens.java
index 62a6919..c30dcbc 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitterTokens.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitterTokens.java
@@ -36,6 +36,10 @@ public enum JSFlexJSEmitterTokens implements IEmitterTokens
UNDERSCORE("_"),
IGNORE_COERCION("@flexjsignorecoercion"),
IGNORE_IMPORT("@flexjsignoreimport"),
+ PREINCREMENT("preincrement"),
+ PREDECREMENT("predecrement"),
+ POSTINCREMENT("postincrement"),
+ POSTDECREMENT("postdecrement"),
;
private String token;
[7/8] git commit: [flex-falcon] [refs/heads/develop] - allow omission
of unused types from jsdoc
Posted by ah...@apache.org.
allow omission of unused types from jsdoc
Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/e7f31d1c
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/e7f31d1c
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/e7f31d1c
Branch: refs/heads/develop
Commit: e7f31d1c50767e001db43fcdf8c0f13ce916ab6a
Parents: 2ee9fb2
Author: Alex Harui <ah...@apache.org>
Authored: Fri Nov 14 16:46:57 2014 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Fri Nov 14 16:46:57 2014 -0800
----------------------------------------------------------------------
.../codegen/js/flexjs/JSFlexJSDocEmitter.java | 47 +++++++++++++++++++-
.../codegen/js/flexjs/JSFlexJSEmitter.java | 32 ++++++++++++-
.../codegen/js/goog/JSGoogDocEmitter.java | 2 +-
3 files changed, 76 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/e7f31d1c/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSDocEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSDocEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSDocEmitter.java
index 052547c..b676956 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSDocEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSDocEmitter.java
@@ -19,6 +19,8 @@
package org.apache.flex.compiler.internal.codegen.js.flexjs;
+import java.util.ArrayList;
+
import org.apache.flex.compiler.asdoc.flexjs.ASDocComment;
import org.apache.flex.compiler.clients.MXMLJSC;
import org.apache.flex.compiler.codegen.js.IJSEmitter;
@@ -33,7 +35,6 @@ import org.apache.flex.compiler.definitions.references.IReference;
import org.apache.flex.compiler.internal.codegen.as.ASEmitterTokens;
import org.apache.flex.compiler.internal.codegen.js.JSEmitterTokens;
import org.apache.flex.compiler.internal.codegen.js.goog.JSGoogDocEmitter;
-import org.apache.flex.compiler.internal.definitions.InterfaceDefinition;
import org.apache.flex.compiler.internal.scopes.ASScope;
import org.apache.flex.compiler.projects.ICompilerProject;
import org.apache.flex.compiler.tree.as.IDefinitionNode;
@@ -49,9 +50,30 @@ public class JSFlexJSDocEmitter extends JSGoogDocEmitter
super(emitter);
}
+ public ArrayList<String> classIgnoreList;
+ private ArrayList<String> ignoreList;
+
+ @Override
+ protected String convertASTypeToJS(String name, String pname)
+ {
+ if (ignoreList != null)
+ {
+ if (ignoreList.contains(pname + "." + name))
+ return IASLanguageConstants.Object;
+ }
+ if (classIgnoreList != null)
+ {
+ if (classIgnoreList.contains(pname + "." + name))
+ return IASLanguageConstants.Object;
+ }
+ return super.convertASTypeToJS(name, pname);
+ }
+
@Override
public void emitMethodDoc(IFunctionNode node, ICompilerProject project)
{
+ ignoreList = null;
+
IClassDefinition classDefinition = resolveClassDefinition(node);
ASDocComment asDoc = (ASDocComment) node.getASDocComment();
@@ -98,7 +120,13 @@ public class JSFlexJSDocEmitter extends JSGoogDocEmitter
if (ns != null)
{
if (asDoc != null && MXMLJSC.keepASDoc)
+ {
+ String docText = asDoc.commentNoEnd();
+ String ignoreToken = JSFlexJSEmitterTokens.IGNORE_COERCION.getToken();
+ if (docText.contains(ignoreToken))
+ loadIgnores(docText);
write(changeAnnotations(asDoc.commentNoEnd()));
+ }
else
begin();
emitMethodAccess(node);
@@ -178,7 +206,22 @@ public class JSFlexJSDocEmitter extends JSGoogDocEmitter
end();
}
}
-
+
+ private void loadIgnores(String doc)
+ {
+ ignoreList = new ArrayList<String>();
+ String ignoreToken = JSFlexJSEmitterTokens.IGNORE_COERCION.getToken();
+ int index = doc.indexOf(ignoreToken);
+ while (index != -1)
+ {
+ String ignorable = doc.substring(index + ignoreToken.length());
+ int endIndex = ignorable.indexOf("\n");
+ ignorable = ignorable.substring(0, endIndex);
+ ignorable = ignorable.trim();
+ ignoreList.add(ignorable);
+ index = doc.indexOf(ignoreToken, index + endIndex);
+ }
+ }
private String changeAnnotations(String doc)
{
// rename these tags so they don't conflict with generated
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/e7f31d1c/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java
index 7dbd74e..5e4951b 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java
@@ -29,6 +29,7 @@ import java.util.Map;
import java.util.Set;
import org.apache.flex.compiler.asdoc.flexjs.ASDocComment;
+import org.apache.flex.compiler.clients.MXMLJSC;
import org.apache.flex.compiler.codegen.IASGlobalFunctionConstants;
import org.apache.flex.compiler.codegen.IDocEmitter;
import org.apache.flex.compiler.codegen.js.flexjs.IJSFlexJSEmitter;
@@ -130,6 +131,10 @@ public class JSFlexJSEmitter extends JSGoogEmitter implements IJSFlexJSEmitter
{
thisClass = node.getDefinition();
+ ASDocComment asDoc = (ASDocComment) node.getASDocComment();
+ if (asDoc != null && MXMLJSC.keepASDoc)
+ loadImportIgnores(asDoc.commentNoEnd());
+
project = getWalker().getProject();
IClassDefinition definition = node.getDefinition();
@@ -200,7 +205,25 @@ public class JSFlexJSEmitter extends JSGoogEmitter implements IJSFlexJSEmitter
}
}
- @Override
+ private void loadImportIgnores(String doc)
+ {
+ ArrayList<String> ignoreList = new ArrayList<String>();
+ String ignoreToken = JSFlexJSEmitterTokens.IGNORE_IMPORT.getToken();
+ int index = doc.indexOf(ignoreToken);
+ while (index != -1)
+ {
+ String ignorable = doc.substring(index + ignoreToken.length());
+ int endIndex = ignorable.indexOf("\n");
+ ignorable = ignorable.substring(0, endIndex);
+ ignorable = ignorable.trim();
+ ignoreList.add(ignorable);
+ index = doc.indexOf(ignoreToken, index + endIndex);
+ }
+ this.getDocEmitter();
+ docEmitter.classIgnoreList = ignoreList;
+ }
+
+ @Override
public void emitInterface(IInterfaceNode node)
{
ICompilerProject project = getWalker().getProject();
@@ -1260,10 +1283,14 @@ public class JSFlexJSEmitter extends JSGoogEmitter implements IJSFlexJSEmitter
write("_");
}
+ private JSFlexJSDocEmitter docEmitter = null;
+
@Override
public IDocEmitter getDocEmitter()
{
- return new JSFlexJSDocEmitter(this);
+ if (docEmitter == null)
+ docEmitter = new JSFlexJSDocEmitter(this);
+ return docEmitter;
}
@Override
@@ -1744,4 +1771,5 @@ public class JSFlexJSEmitter extends JSGoogEmitter implements IJSFlexJSEmitter
}
super.emitUnaryOperator(node);
}
+
}
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/e7f31d1c/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/goog/JSGoogDocEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/goog/JSGoogDocEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/goog/JSGoogDocEmitter.java
index 242cc4e..8986fa4 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/goog/JSGoogDocEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/goog/JSGoogDocEmitter.java
@@ -455,7 +455,7 @@ public class JSGoogDocEmitter extends JSDocEmitter implements IJSGoogDocEmitter
return false;
}
- private String convertASTypeToJS(String name, String pname)
+ protected String convertASTypeToJS(String name, String pname)
{
String result = "";
[3/8] git commit: [flex-falcon] [refs/heads/develop] - fix simple
array output
Posted by ah...@apache.org.
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;
[6/8] git commit: [flex-falcon] [refs/heads/develop] - always use
type for packagename in doc
Posted by ah...@apache.org.
always use type for packagename in doc
Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/2ee9fb2a
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/2ee9fb2a
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/2ee9fb2a
Branch: refs/heads/develop
Commit: 2ee9fb2a1d6f0182bbd1b496c158d140fdaeeeaa
Parents: 6207b3c
Author: Alex Harui <ah...@apache.org>
Authored: Fri Nov 14 08:27:41 2014 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Fri Nov 14 08:27:41 2014 -0800
----------------------------------------------------------------------
.../compiler/internal/codegen/js/flexjs/JSFlexJSDocEmitter.java | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/2ee9fb2a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSDocEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSDocEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSDocEmitter.java
index 044c2f7..052547c 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSDocEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSDocEmitter.java
@@ -151,10 +151,7 @@ public class JSFlexJSDocEmitter extends JSGoogDocEmitter
.resolveReturnType(project);
String packageName = "";
- if (tdef instanceof InterfaceDefinition)
- packageName = tdef.getPackageName();
- else
- packageName = node.getPackageName();
+ packageName = tdef.getPackageName();
emitReturn(node, packageName);
}
[8/8] git commit: [flex-falcon] [refs/heads/develop] - only wrap ++
in parens in certain cases
Posted by ah...@apache.org.
only wrap ++ in parens in certain cases
Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/096bc855
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/096bc855
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/096bc855
Branch: refs/heads/develop
Commit: 096bc85587edf2062408cd86971d06941ed747dd
Parents: e7f31d1
Author: Alex Harui <ah...@apache.org>
Authored: Fri Nov 14 22:27:52 2014 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Fri Nov 14 22:27:52 2014 -0800
----------------------------------------------------------------------
.../internal/codegen/js/flexjs/JSFlexJSEmitter.java | 15 +++++++++++----
1 file changed, 11 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/096bc855/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java
index 5e4951b..52f5303 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitter.java
@@ -62,6 +62,7 @@ import org.apache.flex.compiler.internal.tree.as.ChainedVariableNode;
import org.apache.flex.compiler.internal.tree.as.ClassNode;
import org.apache.flex.compiler.internal.tree.as.FunctionCallNode;
import org.apache.flex.compiler.internal.tree.as.FunctionNode;
+import org.apache.flex.compiler.internal.tree.as.MemberAccessExpressionNode;
import org.apache.flex.compiler.internal.tree.as.ParameterNode;
import org.apache.flex.compiler.internal.tree.as.RegExpLiteralNode;
import org.apache.flex.compiler.internal.tree.as.UnaryOperatorAtNode;
@@ -1762,10 +1763,16 @@ public class JSFlexJSEmitter extends JSGoogEmitter implements IJSFlexJSEmitter
}
else
{
- write(ASEmitterTokens.PAREN_OPEN);
- super.emitUnaryOperator(node);
- write(ASEmitterTokens.PAREN_CLOSE);
- return;
+ IASNode parentNode = node.getParent();
+ if (parentNode.getNodeID() == ASTNodeID.MemberAccessExpressionID &&
+ ((MemberAccessExpressionNode)parentNode).getLeftOperandNode() == node)
+ {
+ // GCC wanted parens around foo++.toString(). As in (foo++).toString();
+ write(ASEmitterTokens.PAREN_OPEN);
+ super.emitUnaryOperator(node);
+ write(ASEmitterTokens.PAREN_CLOSE);
+ return;
+ }
}
}
[4/8] git commit: [flex-falcon] [refs/heads/develop] - fix binding
expressions
Posted by ah...@apache.org.
fix binding expressions
Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/f6c099b6
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/f6c099b6
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/f6c099b6
Branch: refs/heads/develop
Commit: f6c099b64a36526d2e77f5545e0bc3442981aa9e
Parents: 7120b40
Author: Alex Harui <ah...@apache.org>
Authored: Fri Nov 14 07:58:10 2014 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Fri Nov 14 07:58:10 2014 -0800
----------------------------------------------------------------------
.../codegen/mxml/flexjs/MXMLFlexJSEmitter.java | 19 ++++++++++++++++---
1 file changed, 16 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/f6c099b6/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 43d2af2..7c59b1d 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
@@ -463,9 +463,20 @@ public class MXMLFlexJSEmitter extends MXMLEmitter implements
List<IExpressionNode> getterNodes = bi.getExpressionNodesForGetter();
StringBuilder sb = new StringBuilder();
sb.append("function() { return ");
- for (IExpressionNode getterNode : getterNodes)
+ int n = getterNodes.size();
+ for (int i = 0; i < n; i++)
{
- sb.append(asEmitter.stringifyNode(getterNode));
+ IExpressionNode getterNode = getterNodes.get(i);
+ if (getterNode.getNodeID() == ASTNodeID.LiteralStringID)
+ {
+ sb.append(ASEmitterTokens.DOUBLE_QUOTE.getToken());
+ sb.append(asEmitter.stringifyNode(getterNode));
+ sb.append(ASEmitterTokens.DOUBLE_QUOTE.getToken());
+ }
+ else
+ sb.append(asEmitter.stringifyNode(getterNode));
+ if (i < n - 1)
+ sb.append(ASEmitterTokens.SPACE.getToken() + ASEmitterTokens.PLUS.getToken() + ASEmitterTokens.SPACE.getToken());
}
sb.append("; },");
writeNewline(sb.toString());
@@ -1439,7 +1450,9 @@ public class MXMLFlexJSEmitter extends MXMLEmitter implements
else
{
MXMLDescriptorSpecifier ps = getCurrentDescriptor("ps");
- ps.value = "{";
+ if (ps.value == null)
+ ps.value = "";
+ ps.value += "{";
for (int i = 0; i < len; i++)
{
IMXMLPropertySpecifierNode propName = (IMXMLPropertySpecifierNode)node.getChild(i);
[2/8] git commit: [flex-falcon] [refs/heads/develop] - fix css output
Posted by ah...@apache.org.
fix css 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/00147b62
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/00147b62
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/00147b62
Branch: refs/heads/develop
Commit: 00147b62490e0e4df52024ca875aeb9d432b423d
Parents: 5354db8
Author: Alex Harui <ah...@apache.org>
Authored: Thu Nov 13 15:12:46 2014 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Thu Nov 13 15:12:46 2014 -0800
----------------------------------------------------------------------
.../internal/codegen/mxml/flexjs/MXMLFlexJSBlockWalker.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/00147b62/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSBlockWalker.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSBlockWalker.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSBlockWalker.java
index 6e62dbe..d4a613e 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSBlockWalker.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSBlockWalker.java
@@ -106,7 +106,7 @@ public class MXMLFlexJSBlockWalker extends MXMLBlockWalker
return;
session.setKeepAllTypeSelectors(true);
- encodedCSS += ((JSCSSCompilationSession)session).getEncodedCSS(flexProject, problems);
+ encodedCSS = ((JSCSSCompilationSession)session).getEncodedCSS(flexProject, problems);
}
}