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 2017/05/15 22:12:54 UTC
[1/2] git commit: [flex-falcon] [refs/heads/release0.8.0] - allow
pruning of Class Selectors
Repository: flex-falcon
Updated Branches:
refs/heads/release0.8.0 ad8fb20ee -> d210ac57c
allow pruning of Class Selectors
Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/55ca0b2d
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/55ca0b2d
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/55ca0b2d
Branch: refs/heads/release0.8.0
Commit: 55ca0b2d5c6b4892afba73fcbcba2ef3bac7ce42
Parents: ad8fb20
Author: Alex Harui <ah...@apache.org>
Authored: Mon May 15 15:12:21 2017 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon May 15 15:12:21 2017 -0700
----------------------------------------------------------------------
.../css/semantics/CSSSemanticAnalyzer.java | 36 +++++++++++++++++++-
1 file changed, 35 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/55ca0b2d/compiler/src/main/java/org/apache/flex/compiler/internal/css/semantics/CSSSemanticAnalyzer.java
----------------------------------------------------------------------
diff --git a/compiler/src/main/java/org/apache/flex/compiler/internal/css/semantics/CSSSemanticAnalyzer.java b/compiler/src/main/java/org/apache/flex/compiler/internal/css/semantics/CSSSemanticAnalyzer.java
index e2f244c..d34cdee 100644
--- a/compiler/src/main/java/org/apache/flex/compiler/internal/css/semantics/CSSSemanticAnalyzer.java
+++ b/compiler/src/main/java/org/apache/flex/compiler/internal/css/semantics/CSSSemanticAnalyzer.java
@@ -36,6 +36,7 @@ import org.apache.flex.compiler.css.ICSSProperty;
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.definitions.IClassDefinition;
import org.apache.flex.compiler.definitions.IDefinition;
import org.apache.flex.compiler.definitions.metadata.IMetaTag;
@@ -385,7 +386,11 @@ public class CSSSemanticAnalyzer
for (final ICSSSelector selector : rule.getSelectorGroup())
{
if (isWildcardSelector(selector))
- return true;
+ {
+ String selName = getOptionalSelectorName(selector);
+ if (selName == null) return true;
+ return qnames.contains(selName);
+ }
final String qname = resolvedSelectors.get(selector);
if (qnames.contains(qname))
return true;
@@ -514,6 +519,35 @@ public class CSSSemanticAnalyzer
}
/**
+ * Check if the selector is a optional class selector.
+ * An optional class selector is a class selector
+ * with the name opt_qname_otherstuff.
+ *
+ * The output will not contain the selector if the
+ * class identified by qname is not in the output.
+ *
+ * @param selector CSS selector
+ * @return True if the selector is a "optional" selector.
+ */
+ public static String getOptionalSelectorName(ICSSSelector selector)
+ {
+ ImmutableList<ICSSSelectorCondition> conditions = selector.getConditions();
+ if (conditions.size() == 0)
+ return null;
+ final String elementName = conditions.get(0).getValue();
+ if (elementName == null) return null;
+ if (elementName.startsWith("opt_"))
+ {
+ int c = elementName.indexOf("_", 4);
+ if (c >= 0)
+ {
+ return elementName.substring(4, c).replace("-", ".");
+
+ }
+ }
+ return null;
+ }
+ /**
* Build a map from QNames to class definitions.
*
* @param classDefinitions Class definitions.
[2/2] git commit: [flex-falcon] [refs/heads/release0.8.0] - revert
appending library-path to js-library-path and swc-library-path
Posted by ah...@apache.org.
revert appending library-path to js-library-path and swc-library-path
Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/d210ac57
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/d210ac57
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/d210ac57
Branch: refs/heads/release0.8.0
Commit: d210ac57c1a2d3bd8f87c664d8453fdc702c623c
Parents: 55ca0b2
Author: Alex Harui <ah...@apache.org>
Authored: Mon May 15 15:12:46 2017 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon May 15 15:12:46 2017 -0700
----------------------------------------------------------------------
.../flex/compiler/internal/projects/FlexJSProject.java | 10 ++++++----
.../flex/compiler/internal/projects/FlexProject.java | 10 ++++++----
2 files changed, 12 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/d210ac57/compiler-jx/src/main/java/org/apache/flex/compiler/internal/projects/FlexJSProject.java
----------------------------------------------------------------------
diff --git a/compiler-jx/src/main/java/org/apache/flex/compiler/internal/projects/FlexJSProject.java b/compiler-jx/src/main/java/org/apache/flex/compiler/internal/projects/FlexJSProject.java
index a726d38..8dc88b0 100644
--- a/compiler-jx/src/main/java/org/apache/flex/compiler/internal/projects/FlexJSProject.java
+++ b/compiler-jx/src/main/java/org/apache/flex/compiler/internal/projects/FlexJSProject.java
@@ -392,8 +392,9 @@ public class FlexJSProject extends FlexProject
public List<String> getCompilerExternalLibraryPath(Configuration config)
{
List<String> list = ((JSConfiguration)config).getCompilerJsExternalLibraryPath();
- list.addAll(config.getCompilerExternalLibraryPath());
- return list;
+ if (list != null && list.size() > 0)
+ return list;
+ return config.getCompilerExternalLibraryPath();
}
/**
@@ -402,8 +403,9 @@ public class FlexJSProject extends FlexProject
public List<String> getCompilerLibraryPath(Configuration config)
{
List<String> list = ((JSConfiguration)config).getCompilerJsLibraryPath();
- list.addAll(config.getCompilerLibraryPath());
- return list;
+ if (list != null && list.size() > 0)
+ return list;
+ return config.getCompilerLibraryPath();
}
/**
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/d210ac57/compiler/src/main/java/org/apache/flex/compiler/internal/projects/FlexProject.java
----------------------------------------------------------------------
diff --git a/compiler/src/main/java/org/apache/flex/compiler/internal/projects/FlexProject.java b/compiler/src/main/java/org/apache/flex/compiler/internal/projects/FlexProject.java
index b01eed5..6a8ffd9 100644
--- a/compiler/src/main/java/org/apache/flex/compiler/internal/projects/FlexProject.java
+++ b/compiler/src/main/java/org/apache/flex/compiler/internal/projects/FlexProject.java
@@ -2340,8 +2340,9 @@ public class FlexProject extends ASProject implements IFlexProject
public List<String> getCompilerExternalLibraryPath(Configuration config)
{
List<String> list = config.getCompilerSwfExternalLibraryPath();
- list.addAll(config.getCompilerExternalLibraryPath());
- return list;
+ if (list != null && list.size() > 0)
+ return list;
+ return config.getCompilerExternalLibraryPath();
}
/**
@@ -2350,8 +2351,9 @@ public class FlexProject extends ASProject implements IFlexProject
public List<String> getCompilerLibraryPath(Configuration config)
{
List<String> list = config.getCompilerSwfLibraryPath();
- list.addAll(config.getCompilerLibraryPath());
- return list;
+ if (list != null && list.size() > 0)
+ return list;
+ return config.getCompilerLibraryPath();
}
/**