- From: Yves Lafon via cvs-syncmail <cvsmail@w3.org>
- Date: Fri, 21 Oct 2011 12:52:32 +0000
- To: www-validator-cvs@w3.org
Update of /sources/public/2002/css-validator/org/w3c/css/parser/analyzer
In directory hutz:/tmp/cvs-serv25180/css/parser/analyzer
Modified Files:
CssParser.java CssParser.jj
Log Message:
parsing of mediaquerylist for html links is now done reusing the same logic (parsing mediaquerylist form the parser, using a String Reader), so that should finish media queries per http://www.w3.org/TR/2010/CR-css3-mediaqueries-20100727/
Index: CssParser.jj
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/parser/analyzer/CssParser.jj,v
retrieving revision 1.77
retrieving revision 1.78
diff -u -d -r1.77 -r1.78
--- CssParser.jj 21 Oct 2011 01:49:09 -0000 1.77
+++ CssParser.jj 21 Oct 2011 12:52:29 -0000 1.78
@@ -284,7 +284,8 @@
*
* @see org.w3c.css.css.CssProperty
*/
- public abstract MediaFeature handleMediaFeature(String mediaFeature,
+ public abstract MediaFeature handleMediaFeature(AtRuleMedia rule,
+ String mediaFeature,
CssExpression expr)
throws InvalidParamException;
@@ -335,9 +336,17 @@
* Return the next selector from the inputstream
*/
public CssSelectors parseSelector() throws ParseException {
- return externalSelector();
+ return externalSelector();
+ }
+
+ /**
+ * Return the next @media rule from the inputstream
+ */
+ public AtRuleMedia parseMediaDeclaration() throws ParseException {
+ AtRuleMedia newRule = AtRuleMedia.getInstance(ac.getCssVersion());
+ mediaquerylist(newRule);
+ return newRule;
}
-
/*
* Add a value to an expression
*/
@@ -860,7 +869,7 @@
/**
* @exception ParseException exception during the parse
*/
-void media() :
+AtRuleMedia media() :
{
AtRule old = getAtRule();
AtRuleMedia newRule = AtRuleMedia.getInstance(ac.getCssVersion());
@@ -899,8 +908,10 @@
if (!isCss1) {
addError(e, skipStatement());
}
+ newRule = null;
} finally {
setAtRule(old);
+ return newRule;
}
}
@@ -951,7 +962,7 @@
( <S> )*
( <COLON> ( <S> )* val=expr() )?
<LPARAN> ( <S> )* {
- MediaFeature mf = handleMediaFeature(mediaFeatureName, val);
+ MediaFeature mf = handleMediaFeature(mediaRule, mediaFeatureName, val);
mediaRule.addMediaFeature(mf, ac);
}
}
Index: CssParser.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/parser/analyzer/CssParser.java,v
retrieving revision 1.78
retrieving revision 1.79
diff -u -d -r1.78 -r1.79
--- CssParser.java 21 Oct 2011 01:49:09 -0000 1.78
+++ CssParser.java 21 Oct 2011 12:52:29 -0000 1.79
@@ -264,7 +264,8 @@
*
* @see org.w3c.css.css.CssProperty
*/
- public abstract MediaFeature handleMediaFeature(String mediaFeature,
+ public abstract MediaFeature handleMediaFeature(AtRuleMedia rule,
+ String mediaFeature,
CssExpression expr)
throws InvalidParamException;
@@ -315,9 +316,17 @@
* Return the next selector from the inputstream
*/
public CssSelectors parseSelector() throws ParseException {
- return externalSelector();
+ return externalSelector();
}
+ /**
+ * Return the next @media rule from the inputstream
+ */
+ public AtRuleMedia parseMediaDeclaration() throws ParseException {
+ AtRuleMedia newRule = AtRuleMedia.getInstance(ac.getCssVersion());
+ mediaquerylist(newRule);
+ return newRule;
+ }
/*
* Add a value to an expression
*/
@@ -887,7 +896,7 @@
/**
* @exception ParseException exception during the parse
*/
- final public void media() throws ParseException {
+ final public AtRuleMedia media() throws ParseException {
AtRule old = getAtRule();
AtRuleMedia newRule = AtRuleMedia.getInstance(ac.getCssVersion());
setAtRule(newRule);
@@ -985,9 +994,12 @@
if (!isCss1) {
addError(e, skipStatement());
}
+ newRule = null;
} finally {
setAtRule(old);
+ {if (true) return newRule;}
}
+ throw new Error("Missing return statement in function");
}
final public void mediaquerylist(AtRuleMedia mediaRule) throws ParseException {
@@ -1197,7 +1209,7 @@
}
jj_consume_token(S);
}
- MediaFeature mf = handleMediaFeature(mediaFeatureName, val);
+ MediaFeature mf = handleMediaFeature(mediaRule, mediaFeatureName, val);
mediaRule.addMediaFeature(mf, ac);
}
Received on Friday, 21 October 2011 12:52:33 UTC