- From: Yves Lafon via cvs-syncmail <cvsmail@w3.org>
- Date: Wed, 12 Mar 2008 16:24:03 +0000
- To: www-validator-cvs@w3.org
Update of /sources/public/2002/css-validator/org/w3c/css/parser/analyzer
In directory hutz:/tmp/cvs-serv29098
Modified Files:
CssParser.java CssParser.jj CssParserConstants.java
CssParserTokenManager.java
Log Message:
grammar fixed according to CSS2.1 rules (most fixes were also in CSS2 grammar, F
WIW) it should update bugs:
http://www.w3.org/Bugs/Public/show_bug.cgi?id=4870
http://www.w3.org/Bugs/Public/show_bug.cgi?id=3632
http://www.w3.org/Bugs/Public/show_bug.cgi?id=3313
Index: CssParserTokenManager.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/parser/analyzer/CssParserTokenManager.java,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -d -r1.18 -r1.19
--- CssParserTokenManager.java 11 Mar 2008 10:16:14 -0000 1.18
+++ CssParserTokenManager.java 12 Mar 2008 16:24:00 -0000 1.19
@@ -62,155 +62,194 @@
switch (pos)
{
case 0:
- if ((active0 & 0x20040L) != 0L)
- return 89;
- if ((active0 & 0xfe00000000000000L) != 0L || (active1 & 0x3fL) != 0L)
- return 55;
- if ((active0 & 0x2000000L) != 0L)
- return 218;
+ if ((active0 & 0x80002000000L) != 0L)
+ return 127;
[...6335 lines suppressed...]
{
int i;
jjround = 0x80000001;
- for (i = 388; i-- > 0;)
+ for (i = 443; i-- > 0;)
jjrounds[i] = 0x80000000;
}
public void ReInit(SimpleCharStream stream, int lexState)
@@ -3975,9 +4525,9 @@
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_1();
- if (jjmatchedPos == 0 && jjmatchedKind > 4)
+ if (jjmatchedPos == 0 && jjmatchedKind > 3)
{
- jjmatchedKind = 4;
+ jjmatchedKind = 3;
}
break;
}
Index: CssParser.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/parser/analyzer/CssParser.java,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -d -r1.29 -r1.30
--- CssParser.java 11 Mar 2008 10:21:01 -0000 1.29
+++ CssParser.java 12 Mar 2008 16:24:00 -0000 1.30
@@ -180,7 +180,7 @@
*/
public abstract void handleAtRule(String ident, String string);
- /* added by Sijtsche Smeman */
+ /* added by Sijtsche Smeman */
public abstract void addCharSet(String charset);
public abstract void newAtRule(AtRule atRule);
public abstract void endOfAtRule();
@@ -222,7 +222,7 @@
public abstract void handleRule(CssSelectors selector,
Vector declarations);
[...6729 lines suppressed...]
- jj_rescan = false;
- }
-
- final private void jj_save(int index, int xla) {
- JJCalls p = jj_2_rtns[index];
- while (p.gen > jj_gen) {
- if (p.next == null) { p = p.next = new JJCalls(); break; }
- p = p.next;
- }
- p.gen = jj_gen + xla - jj_la; p.first = token; p.arg = xla;
- }
-
- static final class JJCalls {
- int gen;
- Token first;
- int arg;
- JJCalls next;
- }
-
}
Index: CssParserConstants.java
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/parser/analyzer/CssParserConstants.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- CssParserConstants.java 26 Apr 2006 12:44:15 -0000 1.8
+++ CssParserConstants.java 12 Mar 2008 16:24:00 -0000 1.9
@@ -4,111 +4,147 @@
public interface CssParserConstants {
int EOF = 0;
- int S = 1;
- int CDO = 5;
- int CDC = 6;
- int LBRACE = 7;
- int RBRACE = 8;
- int DASHMATCH = 9;
- int INCLUDES = 10;
- int PREFIXMATCH = 11;
- int SUFFIXMATCH = 12;
- int SUBSTRINGMATCH = 13;
- int TILDE = 14;
- int EQ = 15;
- int PLUS = 16;
- int MINUS = 17;
- int COMMA = 18;
- int SEMICOLON = 19;
- int PRECEDES = 20;
- int DIV = 21;
- int LBRACKET = 22;
- int RBRACKET = 23;
- int ANY = 24;
- int DOT = 25;
- int LPARAN = 26;
- int RPARAN = 27;
- int COLON = 28;
- int AND = 29;
- int MEDIARESTRICTOR = 30;
- int NONASCII = 31;
- int H = 32;
- int UNICODE = 33;
- int ESCAPE = 34;
- int NMSTART = 35;
- int NMCHAR = 36;
- int STRINGCHAR = 37;
- int D = 38;
- int NAME = 39;
- int STRING = 40;
- int IDENT = 41;
- int NUMBER = 42;
- int _URL = 43;
- int URL = 44;
- int PERCENTAGE = 45;
- int LENGTH = 46;
- int EMS = 47;
- int EXS = 48;
- int ANGLE = 49;
- int TIME = 50;
- int FREQ = 51;
- int RESOLUTION = 52;
- int DATE = 53;
- int DIMEN = 54;
- int HASH = 55;
- int IMPORTANT_SYM = 56;
- int IMPORT_SYM = 57;
- int MEDIA_SYM = 58;
- int PAGE_SYM = 59;
- int FONT_FACE_SYM = 60;
- int PREF_SYM = 61;
- int COLOR_PROFILE = 62;
- int CHARSET_SYM = 63;
- int ATTOP = 64;
- int ATRIGHT = 65;
- int ATBOTTOM = 66;
- int ATLEFT = 67;
- int ATCOUNTER = 68;
- int PHONETIC_ALPHABET_SYM = 69;
- int ATKEYWORD = 70;
- int RANGE0 = 71;
- int RANGE1 = 72;
- int RANGE2 = 73;
- int RANGE3 = 74;
- int RANGE4 = 75;
- int RANGE5 = 76;
- int RANGE6 = 77;
- int RANGE = 78;
- int UNI = 79;
- int UNICODERANGE = 80;
- int CLASS = 81;
- int FUNCTION = 82;
+ int H = 4;
+ int NONASCII = 5;
+ int UNICODE = 6;
+ int ESCAPE = 7;
+ int NMSTART = 8;
+ int NMCHAR = 9;
+ int STRING1 = 10;
+ int STRING2 = 11;
+ int INVALID1 = 12;
+ int INVALID2 = 13;
+ int _IDENT = 14;
+ int NAME = 15;
+ int NUM = 16;
+ int _STRING = 17;
+ int _INVALID = 18;
+ int _URL = 19;
+ int _S = 20;
+ int _W = 21;
+ int NL = 22;
+ int S = 23;
+ int CDO = 24;
+ int CDC = 25;
+ int INCLUDES = 26;
+ int DASHMATCH = 27;
+ int LBRACE = 28;
+ int PLUS = 29;
+ int GREATER = 30;
+ int COMMA = 31;
+ int TILDE = 32;
+ int AND = 33;
+ int STRING = 34;
+ int INVALID = 35;
+ int IDENT = 36;
+ int HASH = 37;
+ int RBRACE = 38;
+ int PREFIXMATCH = 39;
+ int SUFFIXMATCH = 40;
+ int SUBSTRINGMATCH = 41;
+ int EQ = 42;
+ int MINUS = 43;
+ int SEMICOLON = 44;
+ int DIV = 45;
+ int LBRACKET = 46;
+ int RBRACKET = 47;
+ int ANY = 48;
+ int DOT = 49;
+ int LPARAN = 50;
+ int RPARAN = 51;
+ int COLON = 52;
+ int MEDIARESTRICTOR = 53;
+ int URL = 54;
+ int LENGTH = 55;
+ int EMS = 56;
+ int EXS = 57;
+ int ANGLE = 58;
+ int TIME = 59;
+ int FREQ = 60;
+ int RESOLUTION = 61;
+ int DATE = 62;
+ int DIMEN = 63;
+ int PERCENTAGE = 64;
+ int NUMBER = 65;
+ int IMPORTANT_SYM = 66;
+ int PSEUDOCLASS_SYM = 67;
+ int CHARSET_SYM = 68;
+ int IMPORT_SYM = 69;
+ int MEDIA_SYM = 70;
+ int PAGE_SYM = 71;
+ int FONT_FACE_SYM = 72;
+ int PREF_SYM = 73;
+ int COLOR_PROFILE = 74;
+ int ATTOP = 75;
+ int ATRIGHT = 76;
+ int ATBOTTOM = 77;
+ int ATLEFT = 78;
+ int ATCOUNTER = 79;
+ int PHONETIC_ALPHABET_SYM = 80;
+ int ATKEYWORD = 81;
+ int RANGE0 = 82;
+ int RANGE1 = 83;
+ int RANGE2 = 84;
+ int RANGE3 = 85;
+ int RANGE4 = 86;
+ int RANGE5 = 87;
+ int RANGE6 = 88;
+ int RANGE = 89;
+ int UNI = 90;
+ int UNICODERANGE = 91;
+ int CLASS = 92;
+ int FUNCTIONLANG = 93;
+ int FUNCTION = 94;
int DEFAULT = 0;
int IN_COMMENT = 1;
String[] tokenImage = {
"<EOF>",
- "<S>",
"\"/*\"",
"\"*/\"",
- "<token of kind 4>",
+ "<token of kind 3>",
+ "<H>",
+ "<NONASCII>",
+ "<UNICODE>",
+ "<ESCAPE>",
+ "<NMSTART>",
+ "<NMCHAR>",
+ "<STRING1>",
+ "<STRING2>",
+ "<INVALID1>",
+ "<INVALID2>",
+ "<_IDENT>",
+ "<NAME>",
+ "<NUM>",
+ "<_STRING>",
+ "<_INVALID>",
+ "<_URL>",
+ "<_S>",
+ "<_W>",
+ "<NL>",
+ "<S>",
"\"<!--\"",
"\"-->\"",
- "\"{\"",
- "\"}\"",
- "\"|=\"",
"\"~=\"",
+ "\"|=\"",
+ "<LBRACE>",
+ "<PLUS>",
+ "<GREATER>",
+ "<COMMA>",
+ "<TILDE>",
+ "\"and\"",
+ "<STRING>",
+ "<INVALID>",
+ "<IDENT>",
+ "<HASH>",
+ "\"}\"",
"\"^=\"",
"\"$=\"",
"\"*=\"",
- "\"~\"",
"\"=\"",
- "\"+\"",
"\"-\"",
- "\",\"",
"\";\"",
- "\">\"",
"\"/\"",
"\"[\"",
"\"]\"",
@@ -117,23 +153,8 @@
"\")\"",
"\"(\"",
"\":\"",
- "<AND>",
"<MEDIARESTRICTOR>",
- "<NONASCII>",
- "<H>",
- "<UNICODE>",
- "<ESCAPE>",
- "<NMSTART>",
- "<NMCHAR>",
- "<STRINGCHAR>",
- "<D>",
- "<NAME>",
- "<STRING>",
- "<IDENT>",
- "<NUMBER>",
- "<_URL>",
"<URL>",
- "<PERCENTAGE>",
"<LENGTH>",
"<EMS>",
"<EXS>",
@@ -143,15 +164,17 @@
"<RESOLUTION>",
"<DATE>",
"<DIMEN>",
- "<HASH>",
+ "<PERCENTAGE>",
+ "<NUMBER>",
"<IMPORTANT_SYM>",
+ "\"::\"",
+ "\"@charset\"",
"\"@import\"",
"\"@media\"",
"\"@page\"",
"\"@font-face\"",
"\"@preference\"",
"\"@color-profile\"",
- "\"@charset\"",
"\"@top\"",
"\"@right\"",
"\"@bottom\"",
@@ -170,8 +193,8 @@
"<UNI>",
"<UNICODERANGE>",
"<CLASS>",
+ "\"lang(\"",
"<FUNCTION>",
- "\"::\"",
};
}
Index: CssParser.jj
===================================================================
RCS file: /sources/public/2002/css-validator/org/w3c/css/parser/analyzer/CssParser.jj,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -d -r1.26 -r1.27
--- CssParser.jj 11 Mar 2008 10:21:01 -0000 1.26
+++ CssParser.jj 12 Mar 2008 16:24:00 -0000 1.27
@@ -10,8 +10,8 @@
options {
IGNORE_CASE = true;
STATIC = false;
- /*DEBUG_TOKEN_MANAGER = true;
- DEBUG_PARSER = true; */
+ /* DEBUG_TOKEN_MANAGER = true;
+ DEBUG_PARSER = true; */
}
@@ -198,7 +198,7 @@
[...1897 lines suppressed...]
getNextToken();
tok = getToken(1);
@@ -1904,6 +1934,8 @@
StringBuffer s = new StringBuffer();
Token tok;
int nesting = 1;
+ /* FIXME
+ same as above */
while (true) {
tok = getToken(1);
if (tok.kind == EOF) {
@@ -1943,7 +1975,7 @@
Token t = getToken(1);
StringBuffer s = new StringBuffer();
s.append(getToken(0).image);
-
+ // FIXME same as above (token consumption may throw an exception)
while ((t.kind != RBRACE) && (t.kind != SEMICOLON) && (t.kind != EOF)) {
s.append(t.image);
getNextToken();
Received on Wednesday, 12 March 2008 16:24:11 UTC