diff --git a/org/w3c/css/parser/analyzer/CssParser.java b/org/w3c/css/parser/analyzer/CssParser.java index bf85209cb..367e52d67 100644 --- a/org/w3c/css/parser/analyzer/CssParser.java +++ b/org/w3c/css/parser/analyzer/CssParser.java @@ -48,6 +48,7 @@ import org.w3c.css.values.CssCheckableValue; import org.w3c.css.values.CssColor; import org.w3c.css.values.CssComparator; +import org.w3c.css.values.CssEnv; import org.w3c.css.values.CssExpression; import org.w3c.css.values.CssFlexibleLength; import org.w3c.css.values.CssFrequency; @@ -410,6 +411,10 @@ private void setValue(CssValue v, CssExpression expr, if (v.getType() == CssTypes.CSS_VARIABLE) { expr.markCssVariable(); } + } else if ( token == FUNCTIONENV ) { + if (v.getType() == CssTypes.CSS_ENV) { + expr.markCssVariable(); + } } else if ( token == FUNCTIONCALC ) { CssCalc c = (CssCalc) v; if (c.hasCssVariable()) { @@ -817,7 +822,7 @@ final public void nested_at_rules() throws ParseException { case RESOLUTION: case DIMEN: case PSEUDOELEMENT_SYM: - case 153:{ + case 154:{ ruleSet(); break; } @@ -1220,7 +1225,7 @@ final public void ignoreStatement() throws ParseException { case SUPPORTS_SYM: case VIEWPORT_SYM: case ATKEYWORD: - case 153:{ + case 154:{ ; break; } @@ -1249,7 +1254,7 @@ final public void ignoreStatement() throws ParseException { case RESOLUTION: case DIMEN: case PSEUDOELEMENT_SYM: - case 153:{ + case 154:{ ruleSet(); break; } @@ -1857,7 +1862,7 @@ final public void mediaquerylist(AtRuleMedia mediaRule) throws ParseException { case SUPPORTS_SYM: case VIEWPORT_SYM: case ATKEYWORD: - case 153:{ + case 154:{ ; break; } @@ -1886,7 +1891,7 @@ final public void mediaquerylist(AtRuleMedia mediaRule) throws ParseException { case RESOLUTION: case DIMEN: case PSEUDOELEMENT_SYM: - case 153:{ + case 154:{ ruleSet(); break; } @@ -2107,14 +2112,14 @@ final public void mediaquerylist(AtRuleMedia mediaRule) throws ParseException { case LPAREN: case COLON: case ATKEYWORD: - case 146: case 147: case 148: case 149: case 150: case 151: case 152: - case 153:{ + case 153: + case 154:{ p = declaration(); f.setProperty(p); break; @@ -3819,14 +3824,14 @@ final public char unaryOperator() throws ParseException { case RPAREN: case LPAREN: case COLON: - case 146: case 147: case 148: case 149: case 150: case 151: case 152: - case 153:{ + case 153: + case 154:{ switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { case PLUS: case GREATER: @@ -3845,14 +3850,14 @@ final public char unaryOperator() throws ParseException { case RPAREN: case LPAREN: case COLON: - case 146: case 147: case 148: case 149: case 150: case 151: case 152: - case 153:{ + case 153: + case 154:{ switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { case PLUS: case GREATER: @@ -3866,19 +3871,15 @@ final public char unaryOperator() throws ParseException { case RPAREN: case LPAREN: case COLON: - case 146: case 147: case 148: case 149: case 150: case 151: case 152: - case 153:{ + case 153: + case 154:{ switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { - case 146:{ - hack = jj_consume_token(146); - break; - } case 147:{ hack = jj_consume_token(147); break; @@ -3907,6 +3908,10 @@ final public char unaryOperator() throws ParseException { hack = jj_consume_token(153); break; } + case 154:{ + hack = jj_consume_token(154); + break; + } case ANY:{ hack = jj_consume_token(ANY); break; @@ -4269,14 +4274,14 @@ final public ArrayList declarations() throws ParseException {if(!va case LPAREN: case COLON: case ATKEYWORD: - case 146: case 147: case 148: case 149: case 150: case 151: case 152: - case 153:{ + case 153: + case 154:{ values = declaration(); if (values != null) { value_set.add(values); @@ -4338,14 +4343,14 @@ final public ArrayList declarations() throws ParseException {if(!va case LPAREN: case COLON: case ATKEYWORD: - case 146: case 147: case 148: case 149: case 150: case 151: case 152: - case 153:{ + case 153: + case 154:{ values = declaration(); if (values != null) { value_set.add(values); @@ -4485,7 +4490,7 @@ final public ArrayList declarations() throws ParseException {if(!va case NOT: case IDENT: case ANY: - case 153:{ + case 154:{ type_selector(selector); label_123: while (true) { @@ -4775,7 +4780,7 @@ final public CssSelectors subclass_selector(CssSelectors selector) throws ParseE case NOT: case IDENT: case ANY: - case 153:{ + case 154:{ type_selector(selector); break; } @@ -4842,7 +4847,7 @@ final public CssSelectors subclass_selector(CssSelectors selector) throws ParseE case NOT: case IDENT: case ANY: - case 153:{ + case 154:{ type_selector(selector); label_129: while (true) { @@ -5069,7 +5074,7 @@ final public CssSelectors subclass_selector(CssSelectors selector) throws ParseE jj_la1[190] = jj_gen; ; } - p = jj_consume_token(153); + p = jj_consume_token(154); } else { ; } @@ -5186,7 +5191,7 @@ final public CssSelectors subclass_selector(CssSelectors selector) throws ParseE jj_la1[194] = jj_gen; ; } - jj_consume_token(153); + jj_consume_token(154); } else { ; } @@ -6218,6 +6223,7 @@ final public void pseudo(CssSelectors s) throws ParseException { case FUNCTIONCLAMP: case FUNCTIONATTR: case FUNCTIONVAR: + case FUNCTIONENV: case FUNCTION:{ values = expr(); break; @@ -6479,12 +6485,12 @@ final public boolean prio() throws ParseException { c1 = jj_consume_token(EQ); break; } - case 152:{ - c1 = jj_consume_token(152); + case 153:{ + c1 = jj_consume_token(153); break; } - case 154:{ - c1 = jj_consume_token(154); + case 155:{ + c1 = jj_consume_token(155); break; } default: @@ -6556,12 +6562,12 @@ final public boolean prio() throws ParseException { c1 = jj_consume_token(EQ); break; } - case 152:{ - c1 = jj_consume_token(152); + case 153:{ + c1 = jj_consume_token(153); break; } - case 154:{ - c1 = jj_consume_token(154); + case 155:{ + c1 = jj_consume_token(155); break; } default: @@ -6600,8 +6606,8 @@ final public boolean prio() throws ParseException { case GREATER: case GREATEREQ: case EQ: - case 152: - case 154:{ + case 153: + case 155:{ switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { case GREATER:{ c2 = jj_consume_token(GREATER); @@ -6615,12 +6621,12 @@ final public boolean prio() throws ParseException { c2 = jj_consume_token(EQ); break; } - case 152:{ - c2 = jj_consume_token(152); + case 153:{ + c2 = jj_consume_token(153); break; } - case 154:{ - c2 = jj_consume_token(154); + case 155:{ + c2 = jj_consume_token(155); break; } default: @@ -6882,6 +6888,7 @@ final public boolean prio() throws ParseException { case FUNCTIONCLAMP: case FUNCTIONATTR: case FUNCTIONVAR: + case FUNCTIONENV: case FUNCTION:{ switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { case FUNCTIONCALC:{ @@ -6912,6 +6919,11 @@ final public boolean prio() throws ParseException { setValue(func, exp, operator, null, FUNCTIONVAR); break; } + case FUNCTIONENV:{ + func = functionenv(); +setValue(func, exp, operator, null, FUNCTIONENV); + break; + } case FUNCTION:{ func = function(); setValue(func, exp, operator, null, FUNCTION); @@ -7459,7 +7471,8 @@ final public boolean prio() throws ParseException { case FUNCTIONROUND: case FUNCTIONCLAMP: case FUNCTIONATTR: - case FUNCTIONVAR:{ + case FUNCTIONVAR: + case FUNCTIONENV:{ v = mathsum(); c.addValue(v); break; @@ -7952,6 +7965,13 @@ final public boolean prio() throws ParseException { } break; } + case FUNCTIONENV:{ + v2 = functionenv(); +if (v2.getType() == CssTypes.CSS_ENV) { + c.markCssVariable(); + } + break; + } default: jj_la1[300] = jj_gen; jj_consume_token(-1); @@ -8351,6 +8371,10 @@ final public boolean prio() throws ParseException { v = functionvar(); break; } + case FUNCTIONENV:{ + v = functionenv(); + break; + } default: jj_la1[318] = jj_gen; jj_consume_token(-1); @@ -8399,7 +8423,7 @@ final public boolean prio() throws ParseException { case ONLY: case NOT: case IDENT: - case 148:{ + case 149:{ switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { case AND: case OR: @@ -8409,8 +8433,8 @@ final public boolean prio() throws ParseException { n = ident(); break; } - case 148:{ - n = jj_consume_token(148); + case 149:{ + n = jj_consume_token(149); break; } default: @@ -8469,11 +8493,12 @@ final public boolean prio() throws ParseException { throw new Error("Missing return statement in function"); } - final public CssCheckableValue functionvar() throws ParseException {Token n; + final public CssCheckableValue functionenv() throws ParseException {Token n; CssExpression exp = null; CssExpression e; - CssVariable var; - jj_consume_token(FUNCTIONVAR); + CssEnv env = null; + String skipped = null; + jj_consume_token(FUNCTIONENV); label_217: while (true) { switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { @@ -8487,12 +8512,11 @@ final public boolean prio() throws ParseException { } jj_consume_token(S); } - n = jj_consume_token(CUSTOM_PROPERTY_NAME); -var = new CssVariable(ac, convertIdent(n.image)); + n = jj_consume_token(IDENT); label_218: while (true) { switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { - case COMMA:{ + case S:{ ; break; } @@ -8500,8 +8524,67 @@ final public boolean prio() throws ParseException { jj_la1[327] = jj_gen; break label_218; } + jj_consume_token(S); + } +env = new CssEnv(ac, convertIdent(n.image)); + e = new CssExpression(); + label_219: + while (true) { + switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { + case PLUS: + case MINUS: + case AND: + case OR: + case ONLY: + case NOT: + case STRING: + case IDENT: + case HASHIDENT: + case HASH: + case PROGID: + case DIV: + case LBRACKET: + case RBRACKET: + case URL: + case RELFONTLENGTH: + case RELVIEWLENGTH: + case ABSOLUTLENGTH: + case FLEX: + case ANGLE: + case SPL: + case ST: + case TIME: + case FREQ: + case RESOLUTION: + case DIMEN_9: + case DIMEN: + case PERCENTAGE: + case NUMBER: + case IMPORTANT_NOT: + case UNICODERANGE: + case FUNCTIONCALC: + case FUNCTIONMATHN: + case FUNCTIONMATH1: + case FUNCTIONMATH2: + case FUNCTIONROUND: + case FUNCTIONCLAMP: + case FUNCTIONATTR: + case FUNCTIONVAR: + case FUNCTIONENV: + case FUNCTION:{ + ; + break; + } + default: + jj_la1[328] = jj_gen; + break label_219; + } + term(e); + } + switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { + case COMMA:{ jj_consume_token(COMMA); - label_219: + label_220: while (true) { switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { case S:{ @@ -8509,8 +8592,77 @@ final public boolean prio() throws ParseException { break; } default: - jj_la1[328] = jj_gen; - break label_219; + jj_la1[329] = jj_gen; + break label_220; + } + jj_consume_token(S); + } + try { + exp = expr(); + } catch (ParseException pe) { +skipped = skip_to_matching_paren(); + // FIXME do something meaningful with that string + exp = null; + } + break; + } + default: + jj_la1[330] = jj_gen; + ; + } + jj_consume_token(RPAREN); +env.setNumberExp(e); + if (exp != null) { + env.setDeclaration(exp); + } else if (skipped != null) { + // do something fancy here + } + {if ("" != null) return env;} + throw new Error("Missing return statement in function"); + } + + final public CssCheckableValue functionvar() throws ParseException {Token n; + CssExpression exp = null; + CssExpression e; + CssVariable var; + jj_consume_token(FUNCTIONVAR); + label_221: + while (true) { + switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { + case S:{ + ; + break; + } + default: + jj_la1[331] = jj_gen; + break label_221; + } + jj_consume_token(S); + } + n = jj_consume_token(CUSTOM_PROPERTY_NAME); +var = new CssVariable(ac, convertIdent(n.image)); + label_222: + while (true) { + switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { + case COMMA:{ + ; + break; + } + default: + jj_la1[332] = jj_gen; + break label_222; + } + jj_consume_token(COMMA); + label_223: + while (true) { + switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { + case S:{ + ; + break; + } + default: + jj_la1[333] = jj_gen; + break label_223; } jj_consume_token(S); } @@ -8534,7 +8686,7 @@ final public boolean prio() throws ParseException { } } } - label_220: + label_224: while (true) { switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { case S:{ @@ -8542,8 +8694,8 @@ final public boolean prio() throws ParseException { break; } default: - jj_la1[329] = jj_gen; - break label_220; + jj_la1[334] = jj_gen; + break label_224; } jj_consume_token(S); } @@ -8563,7 +8715,7 @@ final public boolean prio() throws ParseException { CssColor color = new CssColor(); CssImage img; n = jj_consume_token(FUNCTION); - label_221: + label_225: while (true) { switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { case S:{ @@ -8571,8 +8723,8 @@ final public boolean prio() throws ParseException { break; } default: - jj_la1[330] = jj_gen; - break label_221; + jj_la1[335] = jj_gen; + break label_225; } jj_consume_token(S); } @@ -8617,12 +8769,13 @@ final public boolean prio() throws ParseException { case FUNCTIONCLAMP: case FUNCTIONATTR: case FUNCTIONVAR: + case FUNCTIONENV: case FUNCTION:{ exp = expr(); break; } default: - jj_la1[331] = jj_gen; + jj_la1[336] = jj_gen; ; } jj_consume_token(RPAREN); @@ -8723,7 +8876,7 @@ final public boolean prio() throws ParseException { break; } default: - jj_la1[332] = jj_gen; + jj_la1[337] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -8755,7 +8908,7 @@ final public boolean prio() throws ParseException { break; } default: - jj_la1[333] = jj_gen; + jj_la1[338] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -8891,6 +9044,7 @@ final public boolean prio() throws ParseException { case FUNCTIONROUND: case FUNCTIONATTR: case FUNCTIONVAR: + case FUNCTIONENV: s.append(tok.image); nesting++; getNextToken(); @@ -9220,106 +9374,70 @@ private boolean jj_2_29(int xla) finally { jj_save(28, xla); } } - private boolean jj_3R_452() - { - if (jj_3R_238()) return true; - return false; - } - - private boolean jj_3R_300() - { - if (jj_3R_232()) return true; - return false; - } - - private boolean jj_3R_451() - { - if (jj_scan_token(STRING)) return true; - return false; - } - - private boolean jj_3R_299() - { - if (jj_3R_370()) return true; - return false; - } - - private boolean jj_3R_450() - { - if (jj_scan_token(DIMEN)) return true; - return false; - } - - private boolean jj_3R_298() - { - if (jj_3R_369()) return true; - return false; - } - - private boolean jj_3R_297() + private boolean jj_3R_subclass_selector_2289_11_302() { - if (jj_3R_368()) return true; + if (jj_3R_id_selector_2847_3_376()) return true; return false; } - private boolean jj_3R_449() + private boolean jj_3R_expression_3055_11_457() { if (jj_scan_token(PERCENTAGE)) return true; return false; } - private boolean jj_3R_448() + private boolean jj_3R_expression_3054_11_456() { if (jj_scan_token(NUMBER)) return true; return false; } - private boolean jj_3R_263() + private boolean jj_3R_subclass_selector_2289_9_267() { Token xsp; xsp = jj_scanpos; - if (jj_3R_297()) { + if (jj_3R_subclass_selector_2289_11_302()) { jj_scanpos = xsp; - if (jj_3R_298()) { + if (jj_3R_subclass_selector_2290_11_303()) { jj_scanpos = xsp; - if (jj_3R_299()) { + if (jj_3R_subclass_selector_2291_11_304()) { jj_scanpos = xsp; - if (jj_3R_300()) return true; + if (jj_3R_subclass_selector_2292_11_305()) return true; } } } return false; } - private boolean jj_3R_447() + private boolean jj_3R_expression_3053_11_455() { if (jj_scan_token(MINUS)) return true; return false; } - private boolean jj_3R_446() + private boolean jj_3R_expression_3052_9_454() { if (jj_scan_token(PLUS)) return true; return false; } - private boolean jj_3R_441() + private boolean jj_3R_expression_3052_7_449() { Token xsp; xsp = jj_scanpos; - if (jj_3R_446()) { + if (jj_3R_expression_3052_9_454()) { jj_scanpos = xsp; - if (jj_3R_447()) { + if (jj_3R_expression_3053_11_455()) { jj_scanpos = xsp; - if (jj_3R_448()) { + if (jj_3R_expression_3054_11_456()) { jj_scanpos = xsp; - if (jj_3R_449()) { + if (jj_3R_expression_3055_11_457()) { jj_scanpos = xsp; - if (jj_3R_450()) { + if (jj_3R_expression_3057_11_458()) { jj_scanpos = xsp; - if (jj_3R_451()) { + if (jj_3R_expression_3058_11_459()) { jj_scanpos = xsp; - if (jj_3R_452()) return true; + if (jj_3R_expression_3059_11_460()) return true; } } } @@ -9333,152 +9451,168 @@ private boolean jj_3R_441() return false; } - private boolean jj_3R_431() + private boolean jj_3R_expression_3052_5_439() { Token xsp; - if (jj_3R_441()) return true; + if (jj_3R_expression_3052_7_449()) return true; while (true) { xsp = jj_scanpos; - if (jj_3R_441()) { jj_scanpos = xsp; break; } + if (jj_3R_expression_3052_7_449()) { jj_scanpos = xsp; break; } } return false; } - private boolean jj_3R_376() + private boolean jj_3R_function_3744_45_252() { - Token xsp; - xsp = jj_scanpos; - if (jj_scan_token(42)) { - jj_scanpos = xsp; - if (jj_scan_token(43)) return true; - } + if (jj_3R_expr_3071_3_284()) return true; return false; } - private boolean jj_3R_405() + private boolean jj_3_29() { - if (jj_3R_238()) return true; - if (jj_scan_token(EQ)) return true; - if (jj_scan_token(NUMBER)) return true; + Token xsp; + xsp = jj_scanpos; + if (jj_3R_function_3744_45_252()) jj_scanpos = xsp; + if (jj_scan_token(RPAREN)) return true; return false; } - private boolean jj_3R_443() + private boolean jj_3R_relative_selector_2220_11_451() { - if (jj_3R_255()) return true; + if (jj_3R_combinator_1922_6_259()) return true; return false; } - private boolean jj_3R_437() + private boolean jj_3R_relative_selector_2220_9_445() { Token xsp; xsp = jj_scanpos; - if (jj_3R_443()) jj_scanpos = xsp; - if (jj_3R_435()) return true; + if (jj_3R_relative_selector_2220_11_451()) jj_scanpos = xsp; + if (jj_3R_complex_selector_2305_9_443()) return true; return false; } - private boolean jj_3R_248() + private boolean jj_3R_function_3744_5_383() { - if (jj_3R_279()) return true; + if (jj_scan_token(FUNCTION)) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(21)) { jj_scanpos = xsp; break; } + } + xsp = jj_scanpos; + if (jj_3_29()) { + jj_scanpos = xsp; + if (jj_3R_function_3829_12_413()) return true; + } return false; } - private boolean jj_3R_394() + private boolean jj_3R_declaration_2973_1_402() { - if (jj_3R_408()) return true; + if (jj_3R_property_1988_5_416()) return true; if (jj_scan_token(COLON)) return true; return false; } - private boolean jj_3_29() + private boolean jj_3R_functionvar_3704_5_467() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_248()) jj_scanpos = xsp; - if (jj_scan_token(RPAREN)) return true; + if (jj_scan_token(COMMA)) return true; return false; } - private boolean jj_3R_375() + private boolean jj_3R_functionvar_3701_3_367() { - if (jj_scan_token(FUNCTION)) return true; + if (jj_scan_token(FUNCTIONVAR)) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - xsp = jj_scanpos; - if (jj_3_29()) { - jj_scanpos = xsp; - if (jj_3R_405()) return true; + if (jj_scan_token(CUSTOM_PROPERTY_NAME)) return true; + while (true) { + xsp = jj_scanpos; + if (jj_3R_functionvar_3704_5_467()) { jj_scanpos = xsp; break; } + } + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } + if (jj_scan_token(RPAREN)) return true; return false; } - private boolean jj_3R_428() + private boolean jj_3R_pseudo_class_selector_2802_113_436() { if (true) { jj_la = 0; jj_scanpos = jj_lastpos; return false;} return false; } - private boolean jj_3R_396() + private boolean jj_3R_attr_3655_26_466() + { + if (jj_scan_token(COMMA)) return true; + return false; + } + + private boolean jj_3R_id_selector_2909_5_404() { if (jj_scan_token(HASH)) return true; return false; } - private boolean jj_3R_458() + private boolean jj_3R_functionenv_3675_5_469() { if (jj_scan_token(COMMA)) return true; return false; } - private boolean jj_3R_459() + private boolean jj_3R_functionenv_3674_6_468() { - if (jj_scan_token(COMMA)) return true; + if (jj_3R_term_3147_5_244()) return true; return false; } - private boolean jj_3R_360() + private boolean jj_3R_functionenv_3670_3_368() { - if (jj_scan_token(FUNCTIONVAR)) return true; + if (jj_scan_token(FUNCTIONENV)) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_scan_token(CUSTOM_PROPERTY_NAME)) return true; + if (jj_scan_token(IDENT)) return true; while (true) { xsp = jj_scanpos; - if (jj_3R_459()) { jj_scanpos = xsp; break; } + if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } while (true) { xsp = jj_scanpos; - if (jj_scan_token(21)) { jj_scanpos = xsp; break; } + if (jj_3R_functionenv_3674_6_468()) { jj_scanpos = xsp; break; } } + xsp = jj_scanpos; + if (jj_3R_functionenv_3675_5_469()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; return false; } - private boolean jj_3R_460() + private boolean jj_3R_attr_3653_13_470() { - if (jj_3R_238()) return true; + if (jj_3R_ident_851_5_242()) return true; return false; } - private boolean jj_3R_457() + private boolean jj_3R_attr_3653_11_465() { Token xsp; xsp = jj_scanpos; - if (jj_3R_460()) { + if (jj_3R_attr_3653_13_470()) { jj_scanpos = xsp; - if (jj_scan_token(148)) return true; + if (jj_scan_token(149)) return true; } return false; } - private boolean jj_3R_384() + private boolean jj_3R_mathunit_3620_39_392() { Token xsp; xsp = jj_scanpos; @@ -9489,7 +9623,7 @@ private boolean jj_3R_384() return false; } - private boolean jj_3R_374() + private boolean jj_3R_attr_3649_5_382() { if (jj_scan_token(FUNCTIONATTR)) return true; Token xsp; @@ -9497,62 +9631,62 @@ private boolean jj_3R_374() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_238()) return true; + if (jj_3R_ident_851_5_242()) return true; while (true) { xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; - if (jj_3R_457()) jj_scanpos = xsp; + if (jj_3R_attr_3653_11_465()) jj_scanpos = xsp; xsp = jj_scanpos; - if (jj_3R_458()) jj_scanpos = xsp; + if (jj_3R_attr_3655_26_466()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; return false; } - private boolean jj_3R_362() + private boolean jj_3R_mediainparens_1179_166_370() { - if (jj_3R_393()) return true; + if (jj_3R_mediaexpression_1189_5_401()) return true; return false; } - private boolean jj_3R_359() + private boolean jj_3R_mathunit_3636_7_366() { - if (jj_3R_360()) return true; + if (jj_3R_functionenv_3670_3_368()) return true; return false; } - private boolean jj_3R_358() + private boolean jj_3R_mathunit_3635_7_365() { - if (jj_3R_374()) return true; + if (jj_3R_functionvar_3701_3_367()) return true; return false; } - private boolean jj_3R_357() + private boolean jj_3R_mathunit_3634_7_364() { - if (jj_3R_373()) return true; + if (jj_3R_attr_3649_5_382()) return true; return false; } - private boolean jj_3R_356() + private boolean jj_3R_mathunit_3633_7_363() { - if (jj_3R_372()) return true; + if (jj_3R_mathclamp_3420_5_381()) return true; return false; } - private boolean jj_3R_430() + private boolean jj_3R_mathunit_3632_7_362() { - if (true) { jj_la = 0; jj_scanpos = jj_lastpos; return false;} + if (jj_3R_mathfunction_3334_9_380()) return true; return false; } - private boolean jj_3R_355() + private boolean jj_3R_mathunit_3631_7_361() { - if (jj_3R_371()) return true; + if (jj_3R_mathcalc_3439_5_379()) return true; return false; } - private boolean jj_3R_354() + private boolean jj_3R_mathunit_3630_7_360() { if (jj_scan_token(LPAREN)) return true; Token xsp; @@ -9560,7 +9694,7 @@ private boolean jj_3R_354() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_400()) return true; + if (jj_3R_mathsum_3471_5_408()) return true; while (true) { xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } @@ -9569,83 +9703,89 @@ private boolean jj_3R_354() return false; } - private boolean jj_3R_392() + private boolean jj_3R_mathunit_3628_7_400() { if (jj_scan_token(FREQ)) return true; return false; } - private boolean jj_3R_391() + private boolean jj_3R_mathunit_3627_7_399() { if (jj_scan_token(TIME)) return true; return false; } - private boolean jj_3R_390() + private boolean jj_3R_mathunit_3626_7_398() { if (jj_scan_token(ANGLE)) return true; return false; } - private boolean jj_3R_389() + private boolean jj_3R_pseudo_class_selector_2816_49_438() + { + if (true) { jj_la = 0; jj_scanpos = jj_lastpos; return false;} + return false; + } + + private boolean jj_3R_mathunit_3625_7_397() { if (jj_scan_token(FLEX)) return true; return false; } - private boolean jj_3R_388() + private boolean jj_3R_mathunit_3624_7_396() { if (jj_scan_token(ABSOLUTLENGTH)) return true; return false; } - private boolean jj_3R_387() + private boolean jj_3R_mathunit_3623_7_395() { if (jj_scan_token(RELVIEWLENGTH)) return true; return false; } - private boolean jj_3R_383() + private boolean jj_3R_mathunit_3620_9_391() { - if (jj_3R_254()) return true; + if (jj_3R_unaryOperator_1941_5_258()) return true; return false; } - private boolean jj_3R_386() + private boolean jj_3R_mathunit_3622_7_394() { if (jj_scan_token(RELFONTLENGTH)) return true; return false; } - private boolean jj_3R_385() + private boolean jj_3R_mathunit_3621_7_393() { if (jj_scan_token(PERCENTAGE)) return true; return false; } - private boolean jj_3R_353() + private boolean jj_3R_mathunit_3620_7_359() { Token xsp; xsp = jj_scanpos; - if (jj_3R_383()) jj_scanpos = xsp; + if (jj_3R_mathunit_3620_9_391()) jj_scanpos = xsp; xsp = jj_scanpos; - if (jj_3R_384()) { + if (jj_3R_mathunit_3620_39_392()) { jj_scanpos = xsp; - if (jj_3R_385()) { + if (jj_3R_mathunit_3621_7_393()) { jj_scanpos = xsp; - if (jj_3R_386()) { + if (jj_3R_mathunit_3622_7_394()) { jj_scanpos = xsp; - if (jj_3R_387()) { + if (jj_3R_mathunit_3623_7_395()) { jj_scanpos = xsp; - if (jj_3R_388()) { + if (jj_3R_mathunit_3624_7_396()) { jj_scanpos = xsp; - if (jj_3R_389()) { + if (jj_3R_mathunit_3625_7_397()) { jj_scanpos = xsp; - if (jj_3R_390()) { + if (jj_3R_mathunit_3626_7_398()) { jj_scanpos = xsp; - if (jj_3R_391()) { + if (jj_3R_mathunit_3627_7_399()) { jj_scanpos = xsp; - if (jj_3R_392()) return true; + if (jj_3R_mathunit_3628_7_400()) return true; } } } @@ -9657,23 +9797,26 @@ private boolean jj_3R_353() return false; } - private boolean jj_3R_273() + private boolean jj_3R_mathunit_3620_5_277() { Token xsp; xsp = jj_scanpos; - if (jj_3R_353()) { + if (jj_3R_mathunit_3620_7_359()) { + jj_scanpos = xsp; + if (jj_3R_mathunit_3630_7_360()) { jj_scanpos = xsp; - if (jj_3R_354()) { + if (jj_3R_mathunit_3631_7_361()) { jj_scanpos = xsp; - if (jj_3R_355()) { + if (jj_3R_mathunit_3632_7_362()) { jj_scanpos = xsp; - if (jj_3R_356()) { + if (jj_3R_mathunit_3633_7_363()) { jj_scanpos = xsp; - if (jj_3R_357()) { + if (jj_3R_mathunit_3634_7_364()) { jj_scanpos = xsp; - if (jj_3R_358()) { + if (jj_3R_mathunit_3635_7_365()) { jj_scanpos = xsp; - if (jj_3R_359()) return true; + if (jj_3R_mathunit_3636_7_366()) return true; + } } } } @@ -9683,30 +9826,36 @@ private boolean jj_3R_273() return false; } - private boolean jj_3R_368() + private boolean jj_3R_id_selector_2847_3_376() { Token xsp; xsp = jj_scanpos; - if (jj_3R_395()) { + if (jj_3R_id_selector_2847_3_403()) { jj_scanpos = xsp; - if (jj_3R_396()) return true; + if (jj_3R_id_selector_2909_5_404()) return true; } return false; } - private boolean jj_3R_395() + private boolean jj_3R_id_selector_2847_3_403() { if (jj_scan_token(HASHIDENT)) return true; return false; } - private boolean jj_3R_440() + private boolean jj_3R_pseudo_class_selector_2802_47_448() + { + if (jj_3R_ident_851_5_242()) return true; + return false; + } + + private boolean jj_3R_calcnumbersum_3570_41_281() { - if (jj_3R_238()) return true; + if (jj_scan_token(S)) return true; return false; } - private boolean jj_3R_294() + private boolean jj_3R_pseudo_class_selector_2826_15_299() { if (jj_scan_token(FUNCTION)) return true; Token xsp; @@ -9714,87 +9863,81 @@ private boolean jj_3R_294() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_431()) return true; + if (jj_3R_expression_3052_5_439()) return true; return false; } - private boolean jj_3R_363() + private boolean jj_3R_supports_condition_in_parens_1295_11_371() { - if (jj_3R_394()) return true; + if (jj_3R_declaration_2973_1_402()) return true; return false; } - private boolean jj_3R_276() + private boolean jj_3R_calcnumbersum_3570_37_250() { - if (jj_scan_token(S)) return true; - return false; - } - - private boolean jj_3_4() - { - if (jj_3R_224()) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_3R_calcnumbersum_3570_41_281()) { jj_scanpos = xsp; break; } + } + if (jj_scan_token(MINUS)) return true; return false; } - private boolean jj_3R_429() + private boolean jj_3_28() { - if (jj_3R_439()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } + xsp = jj_scanpos; + if (jj_scan_token(52)) { + jj_scanpos = xsp; + if (jj_scan_token(55)) return true; + } + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(21)) { jj_scanpos = xsp; break; } + } + if (jj_3R_calcnumbervalue_3550_2_251()) return true; return false; } - private boolean jj_3R_246() + private boolean jj_3_4() { - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_3R_276()) { jj_scanpos = xsp; break; } - } - if (jj_scan_token(MINUS)) return true; + if (jj_3R_supports_condition_1261_5_228()) return true; return false; } - private boolean jj_3R_282() + private boolean jj_3R_pseudo_class_selector_2816_19_437() { - if (jj_scan_token(LPAREN)) return true; + if (jj_3R_anplusb_1955_9_447()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - xsp = jj_scanpos; - if (jj_3_4()) { - jj_scanpos = xsp; - if (jj_3R_363()) return true; - } return false; } - private boolean jj_3_28() + private boolean jj_3R_supports_condition_in_parens_1293_5_287() { + if (jj_scan_token(LPAREN)) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; - if (jj_scan_token(52)) { + if (jj_3_4()) { jj_scanpos = xsp; - if (jj_scan_token(55)) return true; + if (jj_3R_supports_condition_in_parens_1295_11_371()) return true; } - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(21)) { jj_scanpos = xsp; break; } - } - if (jj_3R_247()) return true; return false; } - private boolean jj_3R_293() + private boolean jj_3R_pseudo_class_selector_2815_15_298() { Token xsp; xsp = jj_scanpos; @@ -9807,14 +9950,14 @@ private boolean jj_3R_293() if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; - if (jj_3R_429()) { + if (jj_3R_pseudo_class_selector_2816_19_437()) { jj_scanpos = xsp; - if (jj_3R_430()) return true; + if (jj_3R_pseudo_class_selector_2816_49_438()) return true; } return false; } - private boolean jj_3R_438() + private boolean jj_3R_relative_selector_list_2046_11_446() { if (jj_scan_token(COMMA)) return true; return false; @@ -9822,26 +9965,26 @@ private boolean jj_3R_438() private boolean jj_3_3() { - if (jj_3R_223()) return true; + if (jj_3R_mediarange_3093_5_227()) return true; return false; } - private boolean jj_3R_427() + private boolean jj_3R_pseudo_class_selector_2802_19_435() { - if (jj_3R_439()) return true; + if (jj_3R_anplusb_1955_9_447()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; - if (jj_3R_440()) jj_scanpos = xsp; + if (jj_3R_pseudo_class_selector_2802_47_448()) jj_scanpos = xsp; return false; } - private boolean jj_3R_226() + private boolean jj_3R_anplusb_1969_83_230() { - if (jj_3R_254()) return true; + if (jj_3R_unaryOperator_1941_5_258()) return true; Token xsp; while (true) { xsp = jj_scanpos; @@ -9850,18 +9993,18 @@ private boolean jj_3R_226() return false; } - private boolean jj_3R_426() + private boolean jj_3R_relative_selector_list_2041_9_434() { - if (jj_3R_437()) return true; + if (jj_3R_relative_selector_2220_9_445()) return true; Token xsp; while (true) { xsp = jj_scanpos; - if (jj_3R_438()) { jj_scanpos = xsp; break; } + if (jj_3R_relative_selector_list_2046_11_446()) { jj_scanpos = xsp; break; } } return false; } - private boolean jj_3R_292() + private boolean jj_3R_pseudo_class_selector_2801_15_297() { Token xsp; xsp = jj_scanpos; @@ -9880,9 +10023,9 @@ private boolean jj_3R_292() if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; - if (jj_3R_427()) { + if (jj_3R_pseudo_class_selector_2802_19_435()) { jj_scanpos = xsp; - if (jj_3R_428()) return true; + if (jj_3R_pseudo_class_selector_2802_113_436()) return true; } return false; } @@ -9893,7 +10036,7 @@ private boolean jj_3_27() xsp = jj_scanpos; if (jj_scan_token(28)) { jj_scanpos = xsp; - if (jj_3R_246()) return true; + if (jj_3R_calcnumbersum_3570_37_250()) return true; } if (jj_scan_token(21)) return true; while (true) { @@ -9903,7 +10046,7 @@ private boolean jj_3_27() return false; } - private boolean jj_3R_291() + private boolean jj_3R_pseudo_class_selector_2790_15_296() { Token xsp; xsp = jj_scanpos; @@ -9915,7 +10058,7 @@ private boolean jj_3R_291() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_230()) return true; + if (jj_3R_compound_selector_2393_9_234()) return true; while (true) { xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } @@ -9923,30 +10066,30 @@ private boolean jj_3R_291() return false; } - private boolean jj_3R_253() + private boolean jj_3R_supports_condition_1262_8_257() { - if (jj_3R_282()) return true; + if (jj_3R_supports_condition_in_parens_1293_5_287()) return true; return false; } - private boolean jj_3R_436() + private boolean jj_3R_selector_list_2025_11_444() { if (jj_scan_token(COMMA)) return true; return false; } - private boolean jj_3R_224() + private boolean jj_3R_supports_condition_1261_5_228() { Token xsp; xsp = jj_scanpos; - if (jj_3R_252()) { + if (jj_3R_supports_condition_1261_5_256()) { jj_scanpos = xsp; - if (jj_3R_253()) return true; + if (jj_3R_supports_condition_1262_8_257()) return true; } return false; } - private boolean jj_3R_252() + private boolean jj_3R_supports_condition_1261_5_256() { if (jj_scan_token(NOT)) return true; Token xsp; @@ -9955,25 +10098,25 @@ private boolean jj_3R_252() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_282()) return true; + if (jj_3R_supports_condition_in_parens_1293_5_287()) return true; return false; } - private boolean jj_3R_425() + private boolean jj_3R_selector_list_2020_9_433() { - if (jj_3R_435()) return true; + if (jj_3R_complex_selector_2305_9_443()) return true; Token xsp; while (true) { xsp = jj_scanpos; - if (jj_3R_436()) { jj_scanpos = xsp; break; } + if (jj_3R_selector_list_2025_11_444()) { jj_scanpos = xsp; break; } } return false; } - private boolean jj_3R_290() + private boolean jj_3R_pseudo_class_selector_2781_15_295() { if (jj_scan_token(FUNCTIONHAS)) return true; - if (jj_3R_426()) return true; + if (jj_3R_relative_selector_list_2041_9_434()) return true; Token xsp; while (true) { xsp = jj_scanpos; @@ -9990,15 +10133,15 @@ private boolean jj_3_6() if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; - if (jj_3R_226()) jj_scanpos = xsp; + if (jj_3R_anplusb_1969_83_230()) jj_scanpos = xsp; if (jj_scan_token(NUMBER)) return true; return false; } - private boolean jj_3R_434() + private boolean jj_3R_property_2002_23_442() { if (jj_scan_token(DOT)) return true; - if (jj_3R_238()) return true; + if (jj_3R_ident_851_5_242()) return true; return false; } @@ -10013,39 +10156,23 @@ private boolean jj_3_7() return false; } - private boolean jj_3R_361() - { - if (jj_3R_254()) return true; - return false; - } - - private boolean jj_3R_289() + private boolean jj_3R_calcnumbervalue_3551_6_369() { - if (jj_scan_token(FUNCTIONWHERE)) return true; - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(21)) { jj_scanpos = xsp; break; } - } - if (jj_3R_425()) return true; - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(21)) { jj_scanpos = xsp; break; } - } + if (jj_3R_unaryOperator_1941_5_258()) return true; return false; } - private boolean jj_3R_278() + private boolean jj_3R_calcnumbervalue_3552_2_283() { if (jj_scan_token(LPAREN)) return true; return false; } - private boolean jj_3R_277() + private boolean jj_3R_calcnumbervalue_3551_2_282() { Token xsp; xsp = jj_scanpos; - if (jj_3R_361()) jj_scanpos = xsp; + if (jj_3R_calcnumbervalue_3551_6_369()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(75)) { jj_scanpos = xsp; @@ -10054,24 +10181,40 @@ private boolean jj_3R_277() return false; } - private boolean jj_3R_247() + private boolean jj_3R_calcnumbervalue_3550_2_251() { Token xsp; xsp = jj_scanpos; - if (jj_3R_277()) { + if (jj_3R_calcnumbervalue_3551_2_282()) { jj_scanpos = xsp; - if (jj_3R_278()) return true; + if (jj_3R_calcnumbervalue_3552_2_283()) return true; + } + return false; + } + + private boolean jj_3R_pseudo_class_selector_2767_15_294() + { + if (jj_scan_token(FUNCTIONWHERE)) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(21)) { jj_scanpos = xsp; break; } + } + if (jj_3R_selector_list_2020_9_433()) return true; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } return false; } - private boolean jj_3R_424() + private boolean jj_3R_property_2002_5_432() { Token xsp; xsp = jj_scanpos; if (jj_scan_token(42)) { jj_scanpos = xsp; - if (jj_3R_434()) { + if (jj_3R_property_2002_23_442()) { jj_scanpos = xsp; if (jj_scan_token(109)) return true; } @@ -10083,7 +10226,7 @@ private boolean jj_3R_424() return false; } - private boolean jj_3R_288() + private boolean jj_3R_pseudo_class_selector_2758_15_293() { Token xsp; xsp = jj_scanpos; @@ -10095,7 +10238,7 @@ private boolean jj_3R_288() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_425()) return true; + if (jj_3R_selector_list_2020_9_433()) return true; while (true) { xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } @@ -10103,9 +10246,15 @@ private boolean jj_3R_288() return false; } - private boolean jj_3R_225() + private boolean jj_3R_mathproduct_3520_19_280() { - if (jj_3R_254()) return true; + if (jj_3R_functionenv_3670_3_368()) return true; + return false; + } + + private boolean jj_3R_anplusb_1955_49_229() + { + if (jj_3R_unaryOperator_1941_5_258()) return true; Token xsp; while (true) { xsp = jj_scanpos; @@ -10114,7 +10263,13 @@ private boolean jj_3R_225() return false; } - private boolean jj_3R_287() + private boolean jj_3R_mathproduct_3515_18_279() + { + if (jj_3R_functionvar_3701_3_367()) return true; + return false; + } + + private boolean jj_3R_pseudo_class_selector_2748_17_292() { Token xsp; xsp = jj_scanpos; @@ -10126,28 +10281,26 @@ private boolean jj_3R_287() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_240()) return true; + if (jj_3R_term_3147_5_244()) return true; return false; } - private boolean jj_3R_275() + private boolean jj_3R_anplusb_1969_28_232() { - if (jj_3R_360()) return true; + if (jj_3R_unaryOperator_1941_5_258()) return true; return false; } - private boolean jj_3R_228() + private boolean jj_3R_mathproduct_3513_18_278() { - if (jj_3R_254()) return true; + if (jj_3R_calcnumbervalue_3550_2_251()) return true; return false; } - private boolean jj_3R_442() + private boolean jj_3R_property_1988_8_450() { Token xsp; xsp = jj_scanpos; - if (jj_scan_token(146)) { - jj_scanpos = xsp; if (jj_scan_token(147)) { jj_scanpos = xsp; if (jj_scan_token(148)) { @@ -10162,6 +10315,8 @@ private boolean jj_3R_442() jj_scanpos = xsp; if (jj_scan_token(153)) { jj_scanpos = xsp; + if (jj_scan_token(154)) { + jj_scanpos = xsp; if (jj_scan_token(55)) { jj_scanpos = xsp; if (jj_scan_token(50)) { @@ -10207,25 +10362,25 @@ private boolean jj_3R_442() return false; } - private boolean jj_3R_261() + private boolean jj_3R_pseudo_class_selector_2748_15_265() { Token xsp; xsp = jj_scanpos; - if (jj_3R_287()) { + if (jj_3R_pseudo_class_selector_2748_17_292()) { jj_scanpos = xsp; - if (jj_3R_288()) { + if (jj_3R_pseudo_class_selector_2758_15_293()) { jj_scanpos = xsp; - if (jj_3R_289()) { + if (jj_3R_pseudo_class_selector_2767_15_294()) { jj_scanpos = xsp; - if (jj_3R_290()) { + if (jj_3R_pseudo_class_selector_2781_15_295()) { jj_scanpos = xsp; - if (jj_3R_291()) { + if (jj_3R_pseudo_class_selector_2790_15_296()) { jj_scanpos = xsp; - if (jj_3R_292()) { + if (jj_3R_pseudo_class_selector_2801_15_297()) { jj_scanpos = xsp; - if (jj_3R_293()) { + if (jj_3R_pseudo_class_selector_2815_15_298()) { jj_scanpos = xsp; - if (jj_3R_294()) return true; + if (jj_3R_pseudo_class_selector_2826_15_299()) return true; } } } @@ -10237,37 +10392,31 @@ private boolean jj_3R_261() return false; } - private boolean jj_3R_274() - { - if (jj_3R_247()) return true; - return false; - } - - private boolean jj_3R_433() + private boolean jj_3R_property_1988_7_441() { Token xsp; xsp = jj_scanpos; - if (jj_3R_442()) jj_scanpos = xsp; - if (jj_3R_238()) return true; + if (jj_3R_property_1988_8_450()) jj_scanpos = xsp; + if (jj_3R_ident_851_5_242()) return true; return false; } - private boolean jj_3R_408() + private boolean jj_3R_property_1988_5_416() { Token xsp; xsp = jj_scanpos; - if (jj_3R_423()) { + if (jj_3R_property_1988_5_431()) { jj_scanpos = xsp; - if (jj_3R_424()) return true; + if (jj_3R_property_2002_5_432()) return true; } return false; } - private boolean jj_3R_423() + private boolean jj_3R_property_1988_5_431() { Token xsp; xsp = jj_scanpos; - if (jj_3R_433()) { + if (jj_3R_property_1988_7_441()) { jj_scanpos = xsp; if (jj_scan_token(45)) return true; } @@ -10278,19 +10427,7 @@ private boolean jj_3R_423() return false; } - private boolean jj_3R_453() - { - if (jj_3R_254()) return true; - return false; - } - - private boolean jj_3R_260() - { - if (jj_3R_238()) return true; - return false; - } - - private boolean jj_3R_245() + private boolean jj_3R_mathproduct_3512_12_249() { if (jj_scan_token(DIV)) return true; Token xsp; @@ -10299,20 +10436,29 @@ private boolean jj_3R_245() if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; - if (jj_3R_274()) { + if (jj_3R_mathproduct_3513_18_278()) { jj_scanpos = xsp; - if (jj_3R_275()) return true; + if (jj_3R_mathproduct_3515_18_279()) { + jj_scanpos = xsp; + if (jj_3R_mathproduct_3520_19_280()) return true; + } } return false; } - private boolean jj_3R_227() + private boolean jj_3R_anplusb_1974_15_461() { - if (jj_3R_254()) return true; + if (jj_3R_unaryOperator_1941_5_258()) return true; return false; } - private boolean jj_3R_244() + private boolean jj_3R_pseudo_class_selector_2737_19_264() + { + if (jj_3R_ident_851_5_242()) return true; + return false; + } + + private boolean jj_3R_mathproduct_3510_13_248() { if (jj_scan_token(ANY)) return true; Token xsp; @@ -10320,15 +10466,21 @@ private boolean jj_3R_244() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_273()) return true; + if (jj_3R_mathunit_3620_5_277()) return true; + return false; + } + + private boolean jj_3R_anplusb_1960_28_231() + { + if (jj_3R_unaryOperator_1941_5_258()) return true; return false; } - private boolean jj_3R_445() + private boolean jj_3R_anplusb_1974_11_453() { Token xsp; xsp = jj_scanpos; - if (jj_3R_453()) jj_scanpos = xsp; + if (jj_3R_anplusb_1974_15_461()) jj_scanpos = xsp; if (jj_scan_token(DIMEN)) return true; xsp = jj_scanpos; if (jj_3_7()) jj_scanpos = xsp; @@ -10343,14 +10495,14 @@ private boolean jj_3_26() if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; - if (jj_3R_244()) { + if (jj_3R_mathproduct_3510_13_248()) { jj_scanpos = xsp; - if (jj_3R_245()) return true; + if (jj_3R_mathproduct_3512_12_249()) return true; } return false; } - private boolean jj_3R_272() + private boolean jj_3R_mathsum_3475_41_276() { if (jj_scan_token(S)) return true; return false; @@ -10360,21 +10512,21 @@ private boolean jj_3_9() { Token xsp; xsp = jj_scanpos; - if (jj_3R_228()) jj_scanpos = xsp; + if (jj_3R_anplusb_1969_28_232()) jj_scanpos = xsp; if (jj_scan_token(AN)) return true; xsp = jj_scanpos; if (jj_3_6()) jj_scanpos = xsp; return false; } - private boolean jj_3R_232() + private boolean jj_3R_pseudo_class_selector_2737_9_236() { if (jj_scan_token(COLON)) return true; Token xsp; xsp = jj_scanpos; - if (jj_3R_260()) { + if (jj_3R_pseudo_class_selector_2737_19_264()) { jj_scanpos = xsp; - if (jj_3R_261()) return true; + if (jj_3R_pseudo_class_selector_2748_15_265()) return true; } return false; } @@ -10387,25 +10539,25 @@ private boolean jj_3_5() if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; - if (jj_3R_225()) jj_scanpos = xsp; + if (jj_3R_anplusb_1955_49_229()) jj_scanpos = xsp; if (jj_scan_token(NUMBER)) return true; return false; } - private boolean jj_3R_243() + private boolean jj_3R_mathsum_3475_37_247() { Token xsp; while (true) { xsp = jj_scanpos; - if (jj_3R_272()) { jj_scanpos = xsp; break; } + if (jj_3R_mathsum_3475_41_276()) { jj_scanpos = xsp; break; } } if (jj_scan_token(MINUS)) return true; return false; } - private boolean jj_3R_418() + private boolean jj_3R_mathproduct_3508_2_426() { - if (jj_3R_273()) return true; + if (jj_3R_mathunit_3620_5_277()) return true; Token xsp; while (true) { xsp = jj_scanpos; @@ -10418,44 +10570,44 @@ private boolean jj_3_8() { Token xsp; xsp = jj_scanpos; - if (jj_3R_227()) jj_scanpos = xsp; + if (jj_3R_anplusb_1960_28_231()) jj_scanpos = xsp; if (jj_scan_token(NUMBER)) return true; return false; } - private boolean jj_3R_407() + private boolean jj_3R_mediaexpression_1196_7_415() { if (jj_scan_token(COLON)) return true; return false; } - private boolean jj_3R_444() + private boolean jj_3R_anplusb_1955_9_452() { - if (jj_3R_238()) return true; + if (jj_3R_ident_851_5_242()) return true; Token xsp; xsp = jj_scanpos; if (jj_3_5()) jj_scanpos = xsp; return false; } - private boolean jj_3R_439() + private boolean jj_3R_anplusb_1955_9_447() { Token xsp; xsp = jj_scanpos; - if (jj_3R_444()) { + if (jj_3R_anplusb_1955_9_452()) { jj_scanpos = xsp; if (jj_3_8()) { jj_scanpos = xsp; if (jj_3_9()) { jj_scanpos = xsp; - if (jj_3R_445()) return true; + if (jj_3R_anplusb_1974_11_453()) return true; } } } return false; } - private boolean jj_3R_393() + private boolean jj_3R_mediaexpression_1189_5_401() { if (jj_scan_token(LPAREN)) return true; Token xsp; @@ -10469,7 +10621,7 @@ private boolean jj_3R_393() if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; - if (jj_3R_407()) jj_scanpos = xsp; + if (jj_3R_mediaexpression_1196_7_415()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; return false; } @@ -10482,70 +10634,70 @@ private boolean jj_3_2() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_222()) return true; + if (jj_3R_mediacondition_1158_5_226()) return true; return false; } - private boolean jj_3R_280() + private boolean jj_3_25() { Token xsp; xsp = jj_scanpos; - if (jj_3_2()) { - jj_scanpos = xsp; - if (jj_3_3()) { + if (jj_scan_token(28)) { jj_scanpos = xsp; - if (jj_3R_362()) return true; + if (jj_3R_mathsum_3475_37_247()) return true; } + if (jj_scan_token(21)) return true; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } return false; } - private boolean jj_3_25() + private boolean jj_3R_mediainparens_1179_5_285() { Token xsp; xsp = jj_scanpos; - if (jj_scan_token(28)) { + if (jj_3_2()) { jj_scanpos = xsp; - if (jj_3R_243()) return true; + if (jj_3_3()) { + jj_scanpos = xsp; + if (jj_3R_mediainparens_1179_166_370()) return true; } - if (jj_scan_token(21)) return true; - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } return false; } - private boolean jj_3R_284() + private boolean jj_3R_unaryOperator_1942_7_289() { if (jj_scan_token(PLUS)) return true; return false; } - private boolean jj_3R_258() + private boolean jj_3R_pseudo_element_selector_2684_31_262() { - if (jj_3R_238()) return true; + if (jj_3R_ident_851_5_242()) return true; return false; } - private boolean jj_3R_283() + private boolean jj_3R_unaryOperator_1941_5_288() { if (jj_scan_token(MINUS)) return true; return false; } - private boolean jj_3R_254() + private boolean jj_3R_unaryOperator_1941_5_258() { Token xsp; xsp = jj_scanpos; - if (jj_3R_283()) { + if (jj_3R_unaryOperator_1941_5_288()) { jj_scanpos = xsp; - if (jj_3R_284()) return true; + if (jj_3R_unaryOperator_1942_7_289()) return true; } return false; } - private boolean jj_3R_259() + private boolean jj_3R_pseudo_element_selector_2700_11_263() { if (jj_scan_token(FUNCTIONSLOTTED)) return true; Token xsp; @@ -10553,13 +10705,13 @@ private boolean jj_3R_259() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_230()) return true; + if (jj_3R_compound_selector_2393_9_234()) return true; return false; } - private boolean jj_3R_400() + private boolean jj_3R_mathsum_3471_5_408() { - if (jj_3R_418()) return true; + if (jj_3R_mathproduct_3508_2_426()) return true; Token xsp; while (true) { xsp = jj_scanpos; @@ -10568,25 +10720,25 @@ private boolean jj_3R_400() return false; } - private boolean jj_3R_367() + private boolean jj_3R_combinator_1925_11_375() { if (jj_scan_token(TWOPIPES)) return true; return false; } - private boolean jj_3R_250() + private boolean jj_3R_mediacondition_1159_9_254() { - if (jj_3R_280()) return true; + if (jj_3R_mediainparens_1179_5_285()) return true; return false; } - private boolean jj_3R_366() + private boolean jj_3R_combinator_1924_11_374() { if (jj_scan_token(TILDE)) return true; return false; } - private boolean jj_3R_286() + private boolean jj_3R_combinator_1927_7_291() { Token xsp; if (jj_scan_token(21)) return true; @@ -10597,30 +10749,30 @@ private boolean jj_3R_286() return false; } - private boolean jj_3R_365() + private boolean jj_3R_combinator_1923_11_373() { if (jj_scan_token(GREATER)) return true; return false; } - private boolean jj_3R_364() + private boolean jj_3R_combinator_1922_11_372() { if (jj_scan_token(PLUS)) return true; return false; } - private boolean jj_3R_222() + private boolean jj_3R_mediacondition_1158_5_226() { Token xsp; xsp = jj_scanpos; - if (jj_3R_249()) { + if (jj_3R_mediacondition_1158_5_253()) { jj_scanpos = xsp; - if (jj_3R_250()) return true; + if (jj_3R_mediacondition_1159_9_254()) return true; } return false; } - private boolean jj_3R_249() + private boolean jj_3R_mediacondition_1158_5_253() { if (jj_scan_token(NOT)) return true; Token xsp; @@ -10628,21 +10780,21 @@ private boolean jj_3R_249() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_280()) return true; + if (jj_3R_mediainparens_1179_5_285()) return true; return false; } - private boolean jj_3R_285() + private boolean jj_3R_combinator_1922_8_290() { Token xsp; xsp = jj_scanpos; - if (jj_3R_364()) { + if (jj_3R_combinator_1922_11_372()) { jj_scanpos = xsp; - if (jj_3R_365()) { + if (jj_3R_combinator_1923_11_373()) { jj_scanpos = xsp; - if (jj_3R_366()) { + if (jj_3R_combinator_1924_11_374()) { jj_scanpos = xsp; - if (jj_3R_367()) return true; + if (jj_3R_combinator_1925_11_375()) return true; } } } @@ -10653,36 +10805,36 @@ private boolean jj_3R_285() return false; } - private boolean jj_3R_255() + private boolean jj_3R_combinator_1922_6_259() { Token xsp; xsp = jj_scanpos; - if (jj_3R_285()) { + if (jj_3R_combinator_1922_8_290()) { jj_scanpos = xsp; - if (jj_3R_286()) return true; + if (jj_3R_combinator_1927_7_291()) return true; } return false; } - private boolean jj_3R_231() + private boolean jj_3R_pseudo_element_selector_2684_9_235() { if (jj_scan_token(PSEUDOELEMENT_SYM)) return true; Token xsp; xsp = jj_scanpos; - if (jj_3R_258()) { + if (jj_3R_pseudo_element_selector_2684_31_262()) { jj_scanpos = xsp; - if (jj_3R_259()) return true; + if (jj_3R_pseudo_element_selector_2700_11_263()) return true; } return false; } private boolean jj_3_1() { - if (jj_3R_222()) return true; + if (jj_3R_mediacondition_1158_5_226()) return true; return false; } - private boolean jj_3R_267() + private boolean jj_3R_operator_1910_5_271() { if (jj_scan_token(COMMA)) return true; Token xsp; @@ -10693,15 +10845,15 @@ private boolean jj_3R_267() return false; } - private boolean jj_3R_239() + private boolean jj_3R_operator_1910_3_243() { Token xsp; xsp = jj_scanpos; - if (jj_3R_267()) jj_scanpos = xsp; + if (jj_3R_operator_1910_5_271()) jj_scanpos = xsp; return false; } - private boolean jj_3R_371() + private boolean jj_3R_mathcalc_3439_5_379() { if (jj_scan_token(FUNCTIONCALC)) return true; Token xsp; @@ -10709,7 +10861,7 @@ private boolean jj_3R_371() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_400()) return true; + if (jj_3R_mathsum_3471_5_408()) return true; while (true) { xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } @@ -10718,7 +10870,7 @@ private boolean jj_3R_371() return false; } - private boolean jj_3R_406() + private boolean jj_3R_ratio_1126_4_414() { if (jj_scan_token(NUMBER)) return true; Token xsp; @@ -10735,7 +10887,7 @@ private boolean jj_3R_406() return false; } - private boolean jj_3R_373() + private boolean jj_3R_mathclamp_3420_5_381() { if (jj_scan_token(FUNCTIONCLAMP)) return true; Token xsp; @@ -10743,7 +10895,7 @@ private boolean jj_3R_373() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_400()) return true; + if (jj_3R_mathsum_3471_5_408()) return true; while (true) { xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } @@ -10753,11 +10905,11 @@ private boolean jj_3R_373() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_400()) return true; + if (jj_3R_mathsum_3471_5_408()) return true; return false; } - private boolean jj_3R_454() + private boolean jj_3R_mathfunction2_3403_20_462() { if (jj_scan_token(COMMA)) return true; Token xsp; @@ -10765,17 +10917,17 @@ private boolean jj_3R_454() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_400()) return true; + if (jj_3R_mathsum_3471_5_408()) return true; return false; } - private boolean jj_3R_404() + private boolean jj_3R_mathfunction_3334_71_412() { - if (jj_3R_422()) return true; + if (jj_3R_mathfunctionround_3365_5_430()) return true; return false; } - private boolean jj_3R_420() + private boolean jj_3R_mathfunction2_3400_5_428() { if (jj_scan_token(FUNCTIONMATH2)) return true; Token xsp; @@ -10783,18 +10935,18 @@ private boolean jj_3R_420() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_400()) return true; + if (jj_3R_mathsum_3471_5_408()) return true; while (true) { xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; - if (jj_3R_454()) jj_scanpos = xsp; + if (jj_3R_mathfunction2_3403_20_462()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; return false; } - private boolean jj_3R_419() + private boolean jj_3R_mathfunction1_3384_5_427() { if (jj_scan_token(FUNCTIONMATH1)) return true; Token xsp; @@ -10802,7 +10954,7 @@ private boolean jj_3R_419() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_400()) return true; + if (jj_3R_mathsum_3471_5_408()) return true; while (true) { xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } @@ -10811,7 +10963,7 @@ private boolean jj_3R_419() return false; } - private boolean jj_3R_456() + private boolean jj_3R_mathfunctionround_3368_20_464() { if (jj_scan_token(COMMA)) return true; Token xsp; @@ -10819,7 +10971,7 @@ private boolean jj_3R_456() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_400()) return true; + if (jj_3R_mathsum_3471_5_408()) return true; return false; } @@ -10829,36 +10981,36 @@ private boolean jj_3_24() return false; } - private boolean jj_3R_403() + private boolean jj_3R_mathfunction_3334_51_411() { - if (jj_3R_421()) return true; + if (jj_3R_mathfunctionn_3347_5_429()) return true; return false; } - private boolean jj_3R_432() + private boolean jj_3R_mathfunctionround_3367_8_440() { - if (jj_3R_400()) return true; + if (jj_3R_mathsum_3471_5_408()) return true; return false; } - private boolean jj_3R_266() + private boolean jj_3R_attribute_selector_2565_41_270() { - if (jj_3R_238()) return true; + if (jj_3R_ident_851_5_242()) return true; return false; } - private boolean jj_3R_237() + private boolean jj_3R_attribute_selector_2565_41_241() { Token xsp; xsp = jj_scanpos; - if (jj_3R_266()) { + if (jj_3R_attribute_selector_2565_41_270()) { jj_scanpos = xsp; if (jj_scan_token(55)) return true; } return false; } - private boolean jj_3R_455() + private boolean jj_3R_mathfunctionn_3350_20_463() { if (jj_scan_token(COMMA)) return true; Token xsp; @@ -10866,11 +11018,11 @@ private boolean jj_3R_455() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_400()) return true; + if (jj_3R_mathsum_3471_5_408()) return true; return false; } - private boolean jj_3R_422() + private boolean jj_3R_mathfunctionround_3365_5_430() { if (jj_scan_token(FUNCTIONROUND)) return true; Token xsp; @@ -10881,7 +11033,7 @@ private boolean jj_3R_422() xsp = jj_scanpos; if (jj_3_24()) { jj_scanpos = xsp; - if (jj_3R_432()) return true; + if (jj_3R_mathfunctionround_3367_8_440()) return true; } while (true) { xsp = jj_scanpos; @@ -10889,15 +11041,15 @@ private boolean jj_3R_422() } while (true) { xsp = jj_scanpos; - if (jj_3R_456()) { jj_scanpos = xsp; break; } + if (jj_3R_mathfunctionround_3368_20_464()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RPAREN)) return true; return false; } - private boolean jj_3R_402() + private boolean jj_3R_mathfunction_3334_31_410() { - if (jj_3R_420()) return true; + if (jj_3R_mathfunction2_3400_5_428()) return true; return false; } @@ -10909,7 +11061,7 @@ private boolean jj_3_18() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_238()) return true; + if (jj_3R_ident_851_5_242()) return true; return false; } @@ -10917,24 +11069,24 @@ private boolean jj_3_17() { Token xsp; xsp = jj_scanpos; - if (jj_3R_237()) jj_scanpos = xsp; - if (jj_scan_token(153)) return true; + if (jj_3R_attribute_selector_2565_41_241()) jj_scanpos = xsp; + if (jj_scan_token(154)) return true; return false; } - private boolean jj_3R_417() + private boolean jj_3R_attribute_selector_2575_14_425() { if (jj_scan_token(STRING)) return true; return false; } - private boolean jj_3R_416() + private boolean jj_3R_attribute_selector_2573_12_424() { - if (jj_3R_238()) return true; + if (jj_3R_ident_851_5_242()) return true; return false; } - private boolean jj_3R_421() + private boolean jj_3R_mathfunctionn_3347_5_429() { if (jj_scan_token(FUNCTIONMATHN)) return true; Token xsp; @@ -10942,70 +11094,76 @@ private boolean jj_3R_421() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_400()) return true; + if (jj_3R_mathsum_3471_5_408()) return true; while (true) { xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } while (true) { xsp = jj_scanpos; - if (jj_3R_455()) { jj_scanpos = xsp; break; } + if (jj_3R_mathfunctionn_3350_20_463()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RPAREN)) return true; return false; } - private boolean jj_3R_415() + private boolean jj_3R_attribute_selector_2571_11_423() { if (jj_scan_token(SUBSTRINGMATCH)) return true; return false; } - private boolean jj_3R_414() + private boolean jj_3R_attribute_selector_2570_11_422() { if (jj_scan_token(SUFFIXMATCH)) return true; return false; } - private boolean jj_3R_413() + private boolean jj_3R_attribute_selector_2569_11_421() { if (jj_scan_token(PREFIXMATCH)) return true; return false; } - private boolean jj_3R_412() + private boolean jj_3R_attribute_selector_2568_11_420() { if (jj_scan_token(DASHMATCH)) return true; return false; } - private boolean jj_3R_410() + private boolean jj_3R_attribute_selector_2566_12_418() { if (jj_scan_token(EQ)) return true; return false; } - private boolean jj_3R_411() + private boolean jj_3R_attribute_selector_2567_11_419() { if (jj_scan_token(INCLUDES)) return true; return false; } - private boolean jj_3R_399() + private boolean jj_3R_mathfunction_3334_11_409() + { + if (jj_3R_mathfunction1_3384_5_427()) return true; + return false; + } + + private boolean jj_3R_attribute_selector_2566_11_407() { Token xsp; xsp = jj_scanpos; - if (jj_3R_410()) { + if (jj_3R_attribute_selector_2566_12_418()) { jj_scanpos = xsp; - if (jj_3R_411()) { + if (jj_3R_attribute_selector_2567_11_419()) { jj_scanpos = xsp; - if (jj_3R_412()) { + if (jj_3R_attribute_selector_2568_11_420()) { jj_scanpos = xsp; - if (jj_3R_413()) { + if (jj_3R_attribute_selector_2569_11_421()) { jj_scanpos = xsp; - if (jj_3R_414()) { + if (jj_3R_attribute_selector_2570_11_422()) { jj_scanpos = xsp; - if (jj_3R_415()) return true; + if (jj_3R_attribute_selector_2571_11_423()) return true; } } } @@ -11016,37 +11174,31 @@ private boolean jj_3R_399() if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; - if (jj_3R_416()) { + if (jj_3R_attribute_selector_2573_12_424()) { jj_scanpos = xsp; - if (jj_3R_417()) return true; + if (jj_3R_attribute_selector_2575_14_425()) return true; } return false; } - private boolean jj_3R_401() - { - if (jj_3R_419()) return true; - return false; - } - - private boolean jj_3R_372() + private boolean jj_3R_mathfunction_3334_9_380() { Token xsp; xsp = jj_scanpos; - if (jj_3R_401()) { + if (jj_3R_mathfunction_3334_11_409()) { jj_scanpos = xsp; - if (jj_3R_402()) { + if (jj_3R_mathfunction_3334_31_410()) { jj_scanpos = xsp; - if (jj_3R_403()) { + if (jj_3R_mathfunction_3334_51_411()) { jj_scanpos = xsp; - if (jj_3R_404()) return true; + if (jj_3R_mathfunction_3334_71_412()) return true; } } } return false; } - private boolean jj_3R_370() + private boolean jj_3R_attribute_selector_2565_5_378() { if (jj_scan_token(LBRACKET)) return true; Token xsp; @@ -11056,84 +11208,84 @@ private boolean jj_3R_370() } xsp = jj_scanpos; if (jj_3_17()) jj_scanpos = xsp; - if (jj_3R_238()) return true; + if (jj_3R_ident_851_5_242()) return true; while (true) { xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; - if (jj_3R_399()) jj_scanpos = xsp; + if (jj_3R_attribute_selector_2566_11_407()) jj_scanpos = xsp; if (jj_scan_token(RBRACKET)) return true; return false; } - private boolean jj_3R_352() + private boolean jj_3R_mediaterm_3324_7_358() { if (jj_scan_token(UNICODERANGE)) return true; return false; } - private boolean jj_3R_351() + private boolean jj_3R_mediaterm_3319_7_357() { if (jj_scan_token(URL)) return true; return false; } - private boolean jj_3R_350() + private boolean jj_3R_mediaterm_3318_7_356() { - if (jj_3R_376()) return true; + if (jj_3R_hashident_3850_5_384()) return true; return false; } - private boolean jj_3R_264() + private boolean jj_3R_compound_selector_2393_157_268() { - if (jj_3R_232()) return true; + if (jj_3R_pseudo_class_selector_2737_9_236()) return true; return false; } - private boolean jj_3R_296() + private boolean jj_3R_type_selector_2538_7_301() { if (jj_scan_token(ANY)) return true; return false; } - private boolean jj_3R_295() + private boolean jj_3R_type_selector_2535_7_300() { - if (jj_3R_238()) return true; + if (jj_3R_ident_851_5_242()) return true; return false; } - private boolean jj_3R_348() + private boolean jj_3R_mediaterm_3293_9_354() { if (jj_scan_token(STRING)) return true; return false; } - private boolean jj_3R_349() + private boolean jj_3R_mediaterm_3294_6_355() { - if (jj_3R_238()) return true; + if (jj_3R_ident_851_5_242()) return true; return false; } - private boolean jj_3R_382() + private boolean jj_3R_mediaterm_3291_9_390() { - if (jj_3R_373()) return true; + if (jj_3R_mathclamp_3420_5_381()) return true; return false; } - private boolean jj_3R_271() + private boolean jj_3R_mediaterm_3293_6_275() { Token xsp; xsp = jj_scanpos; - if (jj_3R_348()) { + if (jj_3R_mediaterm_3293_9_354()) { jj_scanpos = xsp; - if (jj_3R_349()) { + if (jj_3R_mediaterm_3294_6_355()) { jj_scanpos = xsp; - if (jj_3R_350()) { + if (jj_3R_mediaterm_3318_7_356()) { jj_scanpos = xsp; - if (jj_3R_351()) { + if (jj_3R_mediaterm_3319_7_357()) { jj_scanpos = xsp; - if (jj_3R_352()) return true; + if (jj_3R_mediaterm_3324_7_358()) return true; } } } @@ -11145,59 +11297,59 @@ private boolean jj_3R_271() return false; } - private boolean jj_3R_381() + private boolean jj_3R_mediaterm_3290_9_389() { - if (jj_3R_372()) return true; + if (jj_3R_mathfunction_3334_9_380()) return true; return false; } - private boolean jj_3R_380() + private boolean jj_3R_mediaterm_3289_9_388() { - if (jj_3R_371()) return true; + if (jj_3R_mathcalc_3439_5_379()) return true; return false; } - private boolean jj_3R_379() + private boolean jj_3R_mediaterm_3288_9_387() { - if (jj_3R_375()) return true; + if (jj_3R_function_3744_5_383()) return true; return false; } - private boolean jj_3R_265() + private boolean jj_3R_type_selector_2506_21_269() { - if (jj_3R_238()) return true; + if (jj_3R_ident_851_5_242()) return true; return false; } - private boolean jj_3R_236() + private boolean jj_3R_type_selector_2506_21_240() { Token xsp; xsp = jj_scanpos; - if (jj_3R_265()) { + if (jj_3R_type_selector_2506_21_269()) { jj_scanpos = xsp; if (jj_scan_token(55)) return true; } return false; } - private boolean jj_3R_347() + private boolean jj_3R_mediaterm_3288_6_353() { Token xsp; xsp = jj_scanpos; - if (jj_3R_379()) { + if (jj_3R_mediaterm_3288_9_387()) { jj_scanpos = xsp; - if (jj_3R_380()) { + if (jj_3R_mediaterm_3289_9_388()) { jj_scanpos = xsp; - if (jj_3R_381()) { + if (jj_3R_mediaterm_3290_9_389()) { jj_scanpos = xsp; - if (jj_3R_382()) return true; + if (jj_3R_mediaterm_3291_9_390()) return true; } } } return false; } - private boolean jj_3R_346() + private boolean jj_3R_mediaterm_3280_7_352() { if (jj_scan_token(DIMEN_9)) return true; return false; @@ -11207,47 +11359,36 @@ private boolean jj_3_16() { Token xsp; xsp = jj_scanpos; - if (jj_3R_236()) jj_scanpos = xsp; - if (jj_scan_token(153)) return true; + if (jj_3R_type_selector_2506_21_240()) jj_scanpos = xsp; + if (jj_scan_token(154)) return true; return false; } - private boolean jj_3R_262() + private boolean jj_3R_mediaterm_3272_7_351() + { + if (jj_scan_token(IMPORTANT_NOT)) return true; + return false; + } + + private boolean jj_3R_type_selector_2506_5_266() { Token xsp; xsp = jj_scanpos; if (jj_3_16()) jj_scanpos = xsp; xsp = jj_scanpos; - if (jj_3R_295()) { + if (jj_3R_type_selector_2535_7_300()) { jj_scanpos = xsp; - if (jj_3R_296()) return true; + if (jj_3R_type_selector_2538_7_301()) return true; } return false; } - private boolean jj_3R_345() - { - if (jj_scan_token(IMPORTANT_NOT)) return true; - return false; - } - - private boolean jj_3R_344() + private boolean jj_3R_mediaterm_3263_7_350() { if (jj_scan_token(DIMEN)) return true; return false; } - private boolean jj_3R_235() - { - if (jj_3R_231()) return true; - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_3R_264()) { jj_scanpos = xsp; break; } - } - return false; - } - private boolean jj_3_23() { if (jj_scan_token(NUMBER)) return true; @@ -11260,85 +11401,107 @@ private boolean jj_3_23() return false; } - private boolean jj_3R_343() + private boolean jj_3R_mediaterm_3262_7_349() { if (jj_scan_token(SPL)) return true; return false; } - private boolean jj_3R_342() + private boolean jj_3R_compound_selector_2393_108_239() + { + if (jj_3R_pseudo_element_selector_2684_9_235()) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_3R_compound_selector_2393_157_268()) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_mediaterm_3261_7_348() { if (jj_scan_token(ST)) return true; return false; } - private boolean jj_3R_341() + private boolean jj_3R_mediaterm_3260_7_347() { if (jj_scan_token(RESOLUTION)) return true; return false; } - private boolean jj_3R_340() + private boolean jj_3R_mediaterm_3259_7_346() { if (jj_scan_token(FREQ)) return true; return false; } - private boolean jj_3R_339() + private boolean jj_3R_mediaterm_3258_7_345() { if (jj_scan_token(TIME)) return true; return false; } - private boolean jj_3R_338() + private boolean jj_3R_mediaterm_3257_7_344() { if (jj_scan_token(ANGLE)) return true; return false; } - private boolean jj_3R_337() + private boolean jj_3R_mediaterm_3256_7_343() { if (jj_scan_token(FLEX)) return true; return false; } - private boolean jj_3R_336() + private boolean jj_3R_mediaterm_3255_7_342() { if (jj_scan_token(ABSOLUTLENGTH)) return true; return false; } - private boolean jj_3R_335() + private boolean jj_3R_mediaterm_3254_7_341() { if (jj_scan_token(RELVIEWLENGTH)) return true; return false; } - private boolean jj_3R_334() + private boolean jj_3R_mediaterm_3253_7_340() { if (jj_scan_token(RELFONTLENGTH)) return true; return false; } - private boolean jj_3R_333() + private boolean jj_3R_mediaterm_3251_7_339() { if (jj_scan_token(PERCENTAGE)) return true; return false; } - private boolean jj_3R_377() + private boolean jj_3R_mediaterm_3248_10_385() { - if (jj_3R_406()) return true; + if (jj_3R_ratio_1126_4_414()) return true; return false; } - private boolean jj_3R_378() + private boolean jj_3R_mediaterm_3249_9_386() { if (jj_scan_token(NUMBER)) return true; return false; } - private boolean jj_3R_409() + private boolean jj_3R_mediaterm_3248_8_338() + { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_mediaterm_3248_10_385()) { + jj_scanpos = xsp; + if (jj_3R_mediaterm_3249_9_386()) return true; + } + return false; + } + + private boolean jj_3R_deprecated_class_2483_5_417() { Token xsp; xsp = jj_scanpos; @@ -11367,66 +11530,49 @@ private boolean jj_3R_409() return false; } - private boolean jj_3R_332() + private boolean jj_3R_mediaterm_3247_7_337() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_377()) { - jj_scanpos = xsp; - if (jj_3R_378()) return true; - } + if (jj_3R_unaryOperator_1941_5_258()) return true; return false; } - private boolean jj_3R_331() - { - if (jj_3R_254()) return true; - return false; - } - - private boolean jj_3_12() - { - if (jj_3R_232()) return true; - return false; - } - - private boolean jj_3R_270() + private boolean jj_3R_mediaterm_3247_3_274() { Token xsp; xsp = jj_scanpos; - if (jj_3R_331()) jj_scanpos = xsp; + if (jj_3R_mediaterm_3247_7_337()) jj_scanpos = xsp; xsp = jj_scanpos; - if (jj_3R_332()) { + if (jj_3R_mediaterm_3248_8_338()) { jj_scanpos = xsp; - if (jj_3R_333()) { + if (jj_3R_mediaterm_3251_7_339()) { jj_scanpos = xsp; - if (jj_3R_334()) { + if (jj_3R_mediaterm_3253_7_340()) { jj_scanpos = xsp; - if (jj_3R_335()) { + if (jj_3R_mediaterm_3254_7_341()) { jj_scanpos = xsp; - if (jj_3R_336()) { + if (jj_3R_mediaterm_3255_7_342()) { jj_scanpos = xsp; - if (jj_3R_337()) { + if (jj_3R_mediaterm_3256_7_343()) { jj_scanpos = xsp; - if (jj_3R_338()) { + if (jj_3R_mediaterm_3257_7_344()) { jj_scanpos = xsp; - if (jj_3R_339()) { + if (jj_3R_mediaterm_3258_7_345()) { jj_scanpos = xsp; - if (jj_3R_340()) { + if (jj_3R_mediaterm_3259_7_346()) { jj_scanpos = xsp; - if (jj_3R_341()) { + if (jj_3R_mediaterm_3260_7_347()) { jj_scanpos = xsp; - if (jj_3R_342()) { + if (jj_3R_mediaterm_3261_7_348()) { jj_scanpos = xsp; - if (jj_3R_343()) { + if (jj_3R_mediaterm_3262_7_349()) { jj_scanpos = xsp; - if (jj_3R_344()) { + if (jj_3R_mediaterm_3263_7_350()) { jj_scanpos = xsp; - if (jj_3R_345()) { + if (jj_3R_mediaterm_3272_7_351()) { jj_scanpos = xsp; - if (jj_3R_346()) { + if (jj_3R_mediaterm_3280_7_352()) { jj_scanpos = xsp; - if (jj_3R_347()) return true; + if (jj_3R_mediaterm_3288_6_353()) return true; } } } @@ -11449,54 +11595,60 @@ private boolean jj_3R_270() return false; } - private boolean jj_3R_242() + private boolean jj_3R_mediaterm_3247_3_246() { Token xsp; xsp = jj_scanpos; - if (jj_3R_270()) { + if (jj_3R_mediaterm_3247_3_274()) { jj_scanpos = xsp; - if (jj_3R_271()) return true; + if (jj_3R_mediaterm_3293_6_275()) return true; } return false; } + private boolean jj_3_12() + { + if (jj_3R_pseudo_class_selector_2737_9_236()) return true; + return false; + } + private boolean jj_3_22() { if (jj_scan_token(S)) return true; return false; } - private boolean jj_3R_330() + private boolean jj_3R_term_3234_11_336() { if (jj_scan_token(UNICODERANGE)) return true; return false; } - private boolean jj_3R_329() + private boolean jj_3R_term_3229_11_335() { if (jj_scan_token(URL)) return true; return false; } - private boolean jj_3R_328() + private boolean jj_3R_term_3228_11_334() { - if (jj_3R_376()) return true; + if (jj_3R_hashident_3850_5_384()) return true; return false; } private boolean jj_3_13() { - if (jj_3R_232()) return true; + if (jj_3R_pseudo_class_selector_2737_9_236()) return true; return false; } - private boolean jj_3R_234() + private boolean jj_3R_compound_selector_2393_60_238() { - if (jj_3R_263()) return true; + if (jj_3R_subclass_selector_2289_9_267()) return true; return false; } - private boolean jj_3R_281() + private boolean jj_3R_mediarange_3095_121_286() { Token xsp; xsp = jj_scanpos; @@ -11506,9 +11658,9 @@ private boolean jj_3R_281() jj_scanpos = xsp; if (jj_scan_token(50)) { jj_scanpos = xsp; - if (jj_scan_token(152)) { + if (jj_scan_token(153)) { jj_scanpos = xsp; - if (jj_scan_token(154)) return true; + if (jj_scan_token(155)) return true; } } } @@ -11516,13 +11668,13 @@ private boolean jj_3R_281() return false; } - private boolean jj_3R_327() + private boolean jj_3R_term_3205_11_333() { - if (jj_3R_238()) return true; + if (jj_3R_ident_851_5_242()) return true; return false; } - private boolean jj_3R_326() + private boolean jj_3R_term_3204_11_332() { Token xsp; xsp = jj_scanpos; @@ -11533,83 +11685,92 @@ private boolean jj_3R_326() return false; } - private boolean jj_3R_325() + private boolean jj_3R_term_3203_11_331() { if (jj_scan_token(DIV)) return true; return false; } - private boolean jj_3R_324() + private boolean jj_3R_term_3202_11_330() { if (jj_scan_token(STRING)) return true; return false; } - private boolean jj_3R_323() + private boolean jj_3R_term_3201_11_329() + { + if (jj_3R_function_3744_5_383()) return true; + return false; + } + + private boolean jj_3R_term_3200_11_328() { - if (jj_3R_375()) return true; + if (jj_3R_functionenv_3670_3_368()) return true; return false; } - private boolean jj_3R_322() + private boolean jj_3R_term_3199_11_327() { - if (jj_3R_360()) return true; + if (jj_3R_functionvar_3701_3_367()) return true; return false; } - private boolean jj_3R_321() + private boolean jj_3R_term_3198_11_326() { - if (jj_3R_374()) return true; + if (jj_3R_attr_3649_5_382()) return true; return false; } - private boolean jj_3R_320() + private boolean jj_3R_term_3197_11_325() { - if (jj_3R_373()) return true; + if (jj_3R_mathclamp_3420_5_381()) return true; return false; } - private boolean jj_3R_319() + private boolean jj_3R_term_3196_11_324() { - if (jj_3R_372()) return true; + if (jj_3R_mathfunction_3334_9_380()) return true; return false; } - private boolean jj_3R_318() + private boolean jj_3R_term_3195_11_323() { - if (jj_3R_371()) return true; + if (jj_3R_mathcalc_3439_5_379()) return true; return false; } - private boolean jj_3R_269() + private boolean jj_3R_term_3195_9_273() { Token xsp; xsp = jj_scanpos; - if (jj_3R_318()) { + if (jj_3R_term_3195_11_323()) { jj_scanpos = xsp; - if (jj_3R_319()) { + if (jj_3R_term_3196_11_324()) { jj_scanpos = xsp; - if (jj_3R_320()) { + if (jj_3R_term_3197_11_325()) { jj_scanpos = xsp; - if (jj_3R_321()) { + if (jj_3R_term_3198_11_326()) { jj_scanpos = xsp; - if (jj_3R_322()) { + if (jj_3R_term_3199_11_327()) { jj_scanpos = xsp; - if (jj_3R_323()) { + if (jj_3R_term_3200_11_328()) { jj_scanpos = xsp; - if (jj_3R_324()) { + if (jj_3R_term_3201_11_329()) { jj_scanpos = xsp; - if (jj_3R_325()) { + if (jj_3R_term_3202_11_330()) { jj_scanpos = xsp; - if (jj_3R_326()) { + if (jj_3R_term_3203_11_331()) { jj_scanpos = xsp; - if (jj_3R_327()) { + if (jj_3R_term_3204_11_332()) { jj_scanpos = xsp; - if (jj_3R_328()) { + if (jj_3R_term_3205_11_333()) { jj_scanpos = xsp; - if (jj_3R_329()) { + if (jj_3R_term_3228_11_334()) { jj_scanpos = xsp; - if (jj_3R_330()) return true; + if (jj_3R_term_3229_11_335()) { + jj_scanpos = xsp; + if (jj_3R_term_3234_11_336()) return true; + } } } } @@ -11627,65 +11788,65 @@ private boolean jj_3R_269() private boolean jj_3_11() { - if (jj_3R_231()) return true; + if (jj_3R_pseudo_element_selector_2684_9_235()) return true; return false; } - private boolean jj_3R_317() + private boolean jj_3R_term_3185_11_322() { if (jj_scan_token(DIMEN_9)) return true; return false; } - private boolean jj_3R_398() + private boolean jj_3R_class_selector_2418_7_406() { - if (jj_3R_409()) return true; + if (jj_3R_deprecated_class_2483_5_417()) return true; return false; } - private boolean jj_3R_233() + private boolean jj_3R_compound_selector_2393_30_237() { - if (jj_3R_262()) return true; + if (jj_3R_type_selector_2506_5_266()) return true; return false; } - private boolean jj_3R_316() + private boolean jj_3R_term_3177_11_321() { if (jj_scan_token(IMPORTANT_NOT)) return true; return false; } - private boolean jj_3R_315() + private boolean jj_3R_term_3169_11_320() { if (jj_scan_token(PROGID)) return true; return false; } - private boolean jj_3R_369() + private boolean jj_3R_class_selector_2406_5_377() { Token xsp; xsp = jj_scanpos; - if (jj_3R_397()) { + if (jj_3R_class_selector_2406_5_405()) { jj_scanpos = xsp; - if (jj_3R_398()) return true; + if (jj_3R_class_selector_2418_7_406()) return true; } return false; } - private boolean jj_3R_397() + private boolean jj_3R_class_selector_2406_5_405() { if (jj_scan_token(DOT)) return true; - if (jj_3R_238()) return true; + if (jj_3R_ident_851_5_242()) return true; return false; } private boolean jj_3_14() { - if (jj_3R_231()) return true; + if (jj_3R_pseudo_element_selector_2684_9_235()) return true; return false; } - private boolean jj_3R_257() + private boolean jj_3R_compound_selector_2395_11_261() { Token xsp; if (jj_3_14()) return true; @@ -11696,9 +11857,9 @@ private boolean jj_3R_257() return false; } - private boolean jj_3R_256() + private boolean jj_3R_compound_selector_2394_11_260() { - if (jj_3R_262()) return true; + if (jj_3R_type_selector_2506_5_266()) return true; Token xsp; while (true) { xsp = jj_scanpos; @@ -11711,106 +11872,106 @@ private boolean jj_3_15() { Token xsp; xsp = jj_scanpos; - if (jj_3R_233()) jj_scanpos = xsp; - if (jj_3R_234()) return true; + if (jj_3R_compound_selector_2393_30_237()) jj_scanpos = xsp; + if (jj_3R_compound_selector_2393_60_238()) return true; while (true) { xsp = jj_scanpos; - if (jj_3R_234()) { jj_scanpos = xsp; break; } + if (jj_3R_compound_selector_2393_60_238()) { jj_scanpos = xsp; break; } } while (true) { xsp = jj_scanpos; - if (jj_3R_235()) { jj_scanpos = xsp; break; } + if (jj_3R_compound_selector_2393_108_239()) { jj_scanpos = xsp; break; } } return false; } - private boolean jj_3R_314() + private boolean jj_3R_term_3160_11_319() { if (jj_scan_token(DIMEN)) return true; return false; } - private boolean jj_3R_313() + private boolean jj_3R_term_3159_11_318() { if (jj_scan_token(SPL)) return true; return false; } - private boolean jj_3R_230() + private boolean jj_3R_compound_selector_2393_9_234() { Token xsp; xsp = jj_scanpos; if (jj_3_15()) { jj_scanpos = xsp; - if (jj_3R_256()) { + if (jj_3R_compound_selector_2394_11_260()) { jj_scanpos = xsp; - if (jj_3R_257()) return true; + if (jj_3R_compound_selector_2395_11_261()) return true; } } return false; } - private boolean jj_3R_312() + private boolean jj_3R_term_3158_11_317() { if (jj_scan_token(ST)) return true; return false; } - private boolean jj_3R_311() + private boolean jj_3R_term_3157_11_316() { if (jj_scan_token(RESOLUTION)) return true; return false; } - private boolean jj_3R_310() + private boolean jj_3R_term_3156_11_315() { if (jj_scan_token(FREQ)) return true; return false; } - private boolean jj_3R_309() + private boolean jj_3R_term_3155_11_314() { if (jj_scan_token(TIME)) return true; return false; } - private boolean jj_3R_308() + private boolean jj_3R_term_3154_11_313() { if (jj_scan_token(ANGLE)) return true; return false; } - private boolean jj_3R_307() + private boolean jj_3R_term_3153_11_312() { if (jj_scan_token(FLEX)) return true; return false; } - private boolean jj_3R_306() + private boolean jj_3R_term_3152_11_311() { if (jj_scan_token(ABSOLUTLENGTH)) return true; return false; } - private boolean jj_3R_305() + private boolean jj_3R_term_3151_11_310() { if (jj_scan_token(RELVIEWLENGTH)) return true; return false; } - private boolean jj_3R_304() + private boolean jj_3R_term_3150_11_309() { if (jj_scan_token(RELFONTLENGTH)) return true; return false; } - private boolean jj_3R_303() + private boolean jj_3R_term_3149_11_308() { if (jj_scan_token(PERCENTAGE)) return true; return false; } - private boolean jj_3R_302() + private boolean jj_3R_term_3148_11_307() { if (jj_scan_token(NUMBER)) return true; return false; @@ -11818,18 +11979,18 @@ private boolean jj_3R_302() private boolean jj_3_21() { - if (jj_3R_239()) return true; - if (jj_3R_242()) return true; + if (jj_3R_operator_1910_3_243()) return true; + if (jj_3R_mediaterm_3247_3_246()) return true; return false; } - private boolean jj_3R_301() + private boolean jj_3R_term_3147_11_306() { - if (jj_3R_254()) return true; + if (jj_3R_unaryOperator_1941_5_258()) return true; return false; } - private boolean jj_3R_238() + private boolean jj_3R_ident_851_5_242() { Token xsp; xsp = jj_scanpos; @@ -11849,43 +12010,43 @@ private boolean jj_3R_238() return false; } - private boolean jj_3R_268() + private boolean jj_3R_term_3147_7_272() { Token xsp; xsp = jj_scanpos; - if (jj_3R_301()) jj_scanpos = xsp; + if (jj_3R_term_3147_11_306()) jj_scanpos = xsp; xsp = jj_scanpos; - if (jj_3R_302()) { + if (jj_3R_term_3148_11_307()) { jj_scanpos = xsp; - if (jj_3R_303()) { + if (jj_3R_term_3149_11_308()) { jj_scanpos = xsp; - if (jj_3R_304()) { + if (jj_3R_term_3150_11_309()) { jj_scanpos = xsp; - if (jj_3R_305()) { + if (jj_3R_term_3151_11_310()) { jj_scanpos = xsp; - if (jj_3R_306()) { + if (jj_3R_term_3152_11_311()) { jj_scanpos = xsp; - if (jj_3R_307()) { + if (jj_3R_term_3153_11_312()) { jj_scanpos = xsp; - if (jj_3R_308()) { + if (jj_3R_term_3154_11_313()) { jj_scanpos = xsp; - if (jj_3R_309()) { + if (jj_3R_term_3155_11_314()) { jj_scanpos = xsp; - if (jj_3R_310()) { + if (jj_3R_term_3156_11_315()) { jj_scanpos = xsp; - if (jj_3R_311()) { + if (jj_3R_term_3157_11_316()) { jj_scanpos = xsp; - if (jj_3R_312()) { + if (jj_3R_term_3158_11_317()) { jj_scanpos = xsp; - if (jj_3R_313()) { + if (jj_3R_term_3159_11_318()) { jj_scanpos = xsp; - if (jj_3R_314()) { + if (jj_3R_term_3160_11_319()) { jj_scanpos = xsp; - if (jj_3R_315()) { + if (jj_3R_term_3169_11_320()) { jj_scanpos = xsp; - if (jj_3R_316()) { + if (jj_3R_term_3177_11_321()) { jj_scanpos = xsp; - if (jj_3R_317()) return true; + if (jj_3R_term_3185_11_322()) return true; } } } @@ -11904,13 +12065,13 @@ private boolean jj_3R_268() return false; } - private boolean jj_3R_240() + private boolean jj_3R_term_3147_5_244() { Token xsp; xsp = jj_scanpos; - if (jj_3R_268()) { + if (jj_3R_term_3147_7_272()) { jj_scanpos = xsp; - if (jj_3R_269()) return true; + if (jj_3R_term_3195_9_273()) return true; } while (true) { xsp = jj_scanpos; @@ -11919,9 +12080,9 @@ private boolean jj_3R_240() return false; } - private boolean jj_3R_241() + private boolean jj_3R_mediaexpr_3134_5_245() { - if (jj_3R_242()) return true; + if (jj_3R_mediaterm_3247_3_246()) return true; Token xsp; while (true) { xsp = jj_scanpos; @@ -11932,7 +12093,7 @@ private boolean jj_3R_241() private boolean jj_3_20() { - if (jj_3R_238()) return true; + if (jj_3R_ident_851_5_242()) return true; Token xsp; while (true) { xsp = jj_scanpos; @@ -11945,9 +12106,9 @@ private boolean jj_3_20() jj_scanpos = xsp; if (jj_scan_token(50)) { jj_scanpos = xsp; - if (jj_scan_token(152)) { + if (jj_scan_token(153)) { jj_scanpos = xsp; - if (jj_scan_token(154)) return true; + if (jj_scan_token(155)) return true; } } } @@ -11956,19 +12117,19 @@ private boolean jj_3_20() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_241()) return true; + if (jj_3R_mediaexpr_3134_5_245()) return true; return false; } - private boolean jj_3R_229() + private boolean jj_3R_complex_selector_2307_34_233() { - if (jj_3R_255()) return true; + if (jj_3R_combinator_1922_6_259()) return true; return false; } - private boolean jj_3R_251() + private boolean jj_3R_mediarange_3095_9_255() { - if (jj_3R_241()) return true; + if (jj_3R_mediaexpr_3134_5_245()) return true; Token xsp; xsp = jj_scanpos; if (jj_scan_token(30)) { @@ -11977,9 +12138,9 @@ private boolean jj_3R_251() jj_scanpos = xsp; if (jj_scan_token(50)) { jj_scanpos = xsp; - if (jj_scan_token(152)) { + if (jj_scan_token(153)) { jj_scanpos = xsp; - if (jj_scan_token(154)) return true; + if (jj_scan_token(155)) return true; } } } @@ -11988,17 +12149,17 @@ private boolean jj_3R_251() xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } - if (jj_3R_238()) return true; + if (jj_3R_ident_851_5_242()) return true; while (true) { xsp = jj_scanpos; if (jj_scan_token(21)) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; - if (jj_3R_281()) jj_scanpos = xsp; + if (jj_3R_mediarange_3095_121_286()) jj_scanpos = xsp; return false; } - private boolean jj_3R_223() + private boolean jj_3R_mediarange_3093_5_227() { if (jj_scan_token(LPAREN)) return true; Token xsp; @@ -12009,7 +12170,7 @@ private boolean jj_3R_223() xsp = jj_scanpos; if (jj_3_20()) { jj_scanpos = xsp; - if (jj_3R_251()) return true; + if (jj_3R_mediarange_3095_9_255()) return true; } if (jj_scan_token(RPAREN)) return true; return false; @@ -12019,21 +12180,32 @@ private boolean jj_3_10() { Token xsp; xsp = jj_scanpos; - if (jj_3R_229()) jj_scanpos = xsp; - if (jj_3R_230()) return true; + if (jj_3R_complex_selector_2307_34_233()) jj_scanpos = xsp; + if (jj_3R_compound_selector_2393_9_234()) return true; return false; } private boolean jj_3_19() { - if (jj_3R_239()) return true; - if (jj_3R_240()) return true; + if (jj_3R_operator_1910_3_243()) return true; + if (jj_3R_term_3147_5_244()) return true; return false; } - private boolean jj_3R_435() + private boolean jj_3R_hashident_3850_5_384() { - if (jj_3R_230()) return true; + Token xsp; + xsp = jj_scanpos; + if (jj_scan_token(42)) { + jj_scanpos = xsp; + if (jj_scan_token(43)) return true; + } + return false; + } + + private boolean jj_3R_complex_selector_2305_9_443() + { + if (jj_3R_compound_selector_2393_9_234()) return true; Token xsp; while (true) { xsp = jj_scanpos; @@ -12042,9 +12214,9 @@ private boolean jj_3R_435() return false; } - private boolean jj_3R_279() + private boolean jj_3R_expr_3071_3_284() { - if (jj_3R_240()) return true; + if (jj_3R_term_3147_5_244()) return true; Token xsp; while (true) { xsp = jj_scanpos; @@ -12053,6 +12225,50 @@ private boolean jj_3R_279() return false; } + private boolean jj_3R_function_3829_12_413() + { + if (jj_3R_ident_851_5_242()) return true; + if (jj_scan_token(EQ)) return true; + if (jj_scan_token(NUMBER)) return true; + return false; + } + + private boolean jj_3R_expression_3059_11_460() + { + if (jj_3R_ident_851_5_242()) return true; + return false; + } + + private boolean jj_3R_subclass_selector_2292_11_305() + { + if (jj_3R_pseudo_class_selector_2737_9_236()) return true; + return false; + } + + private boolean jj_3R_expression_3058_11_459() + { + if (jj_scan_token(STRING)) return true; + return false; + } + + private boolean jj_3R_subclass_selector_2291_11_304() + { + if (jj_3R_attribute_selector_2565_5_378()) return true; + return false; + } + + private boolean jj_3R_expression_3057_11_458() + { + if (jj_scan_token(DIMEN)) return true; + return false; + } + + private boolean jj_3R_subclass_selector_2290_11_303() + { + if (jj_3R_class_selector_2406_5_377()) return true; + return false; + } + /** Generated Token Manager. */ public CssParserTokenManager token_source; SimpleCharStream jj_input_stream; @@ -12064,7 +12280,7 @@ private boolean jj_3R_279() private Token jj_scanpos, jj_lastpos; private int jj_la; private int jj_gen; - final private int[] jj_la1 = new int[334]; + final private int[] jj_la1 = new int[339]; static private int[] jj_la1_0; static private int[] jj_la1_1; static private int[] jj_la1_2; @@ -12078,19 +12294,19 @@ private boolean jj_3R_279() jj_la1_init_4(); } private static void jj_la1_init_0() { - jj_la1_0 = new int[] {0x0,0x0,0x0,0x1a00000,0x1a00000,0x0,0x0,0x0,0x200000,0x200000,0x0,0x0,0x1800000,0x1800000,0x200000,0x200000,0x200000,0x0,0x0,0x200000,0x200000,0x200000,0x0,0x200000,0x0,0x200000,0x200000,0x0,0x200000,0x0,0x0,0x200000,0x200000,0x200000,0x0,0x200000,0x0,0x200000,0x0,0x200000,0x200000,0x0,0x0,0x200000,0x200000,0x0,0x200000,0x0,0x0,0x0,0x0,0x200000,0x0,0x200000,0x0,0x200000,0x200000,0x0,0x200000,0x200000,0x200000,0x0,0x200000,0x200000,0x200000,0x0,0x0,0x200000,0x200000,0x200000,0x0,0x200000,0x0,0x0,0x0,0x0,0x200000,0x50000000,0x200000,0x0,0x200000,0x0,0x200000,0x200000,0x200000,0x200000,0x0,0x200000,0x200000,0x0,0x0,0x200000,0x200000,0x200000,0x0,0x0,0x0,0x200000,0x0,0x200000,0x0,0x0,0x0,0x200000,0x30000000,0x30000000,0x30000000,0x200000,0x200000,0x200000,0x200000,0x30000000,0x0,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x0,0x50000000,0x200000,0x200000,0x50200000,0x30000000,0x200000,0x200000,0x30000000,0x30000000,0x30000000,0x200000,0x200000,0x30000000,0x30000000,0x200000,0x0,0x30000000,0x50000000,0x50000000,0x50000000,0x200000,0x0,0x200000,0x50000000,0x0,0x200000,0x0,0x200000,0x200000,0x50000000,0x0,0x200000,0x50000000,0x200000,0x50200000,0x200000,0x200000,0x0,0x0,0x0,0x0,0x0,0x0,0x50200000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200000,0x0,0x0,0x200000,0x6000000,0x200000,0x0,0x200000,0x200000,0x6000000,0x200000,0x200000,0x0,0x0,0x0,0x200000,0x0,0x200000,0x200000,0x200000,0x200000,0x200000,0x0,0x200000,0x200000,0x0,0x200000,0x200000,0x200000,0x200000,0x0,0x30000000,0x0,0x200000,0x200000,0x30000000,0x200000,0x0,0x0,0x0,0x200000,0x0,0x0,0x200000,0x30000000,0x0,0x200000,0x30000000,0x200000,0x30000000,0x200000,0x200000,0xc0000000,0x200000,0xc0000000,0x200000,0x200000,0xc0000000,0x200000,0xc0000000,0x30000000,0x200000,0x30000000,0x0,0x0,0x0,0x30000000,0x30000000,0x0,0x0,0x0,0x200000,0x0,0x200000,0x30000000,0x0,0x200000,0x200000,0x0,0x200000,0x200000,0x200000,0x30000000,0x200000,0x0,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x0,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x30200000,0x200000,0x200000,0x200000,0x200000,0x30000000,0x0,0x30000000,0x0,0x200000,0x200000,0x30000000,0x200000,0x30200000,0x200000,0x200000,0x0,0x200000,0x30000000,0x0,0x0,0x200000,0x200000,0x30000000,0x200000,0x200000,0x0,0x200000,0x0,0x200000,0x0,0x200000,0x0,0x200000,0x200000,0x200000,0x30000000,0x0,0x0,}; + jj_la1_0 = new int[] {0x0,0x0,0x0,0x1a00000,0x1a00000,0x0,0x0,0x0,0x200000,0x200000,0x0,0x0,0x1800000,0x1800000,0x200000,0x200000,0x200000,0x0,0x0,0x200000,0x200000,0x200000,0x0,0x200000,0x0,0x200000,0x200000,0x0,0x200000,0x0,0x0,0x200000,0x200000,0x200000,0x0,0x200000,0x0,0x200000,0x0,0x200000,0x200000,0x0,0x0,0x200000,0x200000,0x0,0x200000,0x0,0x0,0x0,0x0,0x200000,0x0,0x200000,0x0,0x200000,0x200000,0x0,0x200000,0x200000,0x200000,0x0,0x200000,0x200000,0x200000,0x0,0x0,0x200000,0x200000,0x200000,0x0,0x200000,0x0,0x0,0x0,0x0,0x200000,0x50000000,0x200000,0x0,0x200000,0x0,0x200000,0x200000,0x200000,0x200000,0x0,0x200000,0x200000,0x0,0x0,0x200000,0x200000,0x200000,0x0,0x0,0x0,0x200000,0x0,0x200000,0x0,0x0,0x0,0x200000,0x30000000,0x30000000,0x30000000,0x200000,0x200000,0x200000,0x200000,0x30000000,0x0,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x0,0x50000000,0x200000,0x200000,0x50200000,0x30000000,0x200000,0x200000,0x30000000,0x30000000,0x30000000,0x200000,0x200000,0x30000000,0x30000000,0x200000,0x0,0x30000000,0x50000000,0x50000000,0x50000000,0x200000,0x0,0x200000,0x50000000,0x0,0x200000,0x0,0x200000,0x200000,0x50000000,0x0,0x200000,0x50000000,0x200000,0x50200000,0x200000,0x200000,0x0,0x0,0x0,0x0,0x0,0x0,0x50200000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200000,0x0,0x0,0x200000,0x6000000,0x200000,0x0,0x200000,0x200000,0x6000000,0x200000,0x200000,0x0,0x0,0x0,0x200000,0x0,0x200000,0x200000,0x200000,0x200000,0x200000,0x0,0x200000,0x200000,0x0,0x200000,0x200000,0x200000,0x200000,0x0,0x30000000,0x0,0x200000,0x200000,0x30000000,0x200000,0x0,0x0,0x0,0x200000,0x0,0x0,0x200000,0x30000000,0x0,0x200000,0x30000000,0x200000,0x30000000,0x200000,0x200000,0xc0000000,0x200000,0xc0000000,0x200000,0x200000,0xc0000000,0x200000,0xc0000000,0x30000000,0x200000,0x30000000,0x0,0x0,0x0,0x30000000,0x30000000,0x0,0x0,0x0,0x200000,0x0,0x200000,0x30000000,0x0,0x200000,0x200000,0x0,0x200000,0x200000,0x200000,0x30000000,0x200000,0x0,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x0,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x200000,0x30200000,0x200000,0x200000,0x200000,0x200000,0x30000000,0x0,0x30000000,0x0,0x200000,0x200000,0x30000000,0x200000,0x30200000,0x200000,0x200000,0x0,0x200000,0x30000000,0x0,0x0,0x200000,0x200000,0x30000000,0x200000,0x200000,0x0,0x200000,0x0,0x200000,0x0,0x200000,0x200000,0x30000000,0x200000,0x0,0x200000,0x0,0x200000,0x200000,0x200000,0x30000000,0x0,0x0,}; } private static void jj_la1_init_1() { - jj_la1_1 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x278,0x0,0x0,0x0,0xe9a00e78,0x0,0x0,0x0,0x0,0x0,0x278,0x10000080,0x0,0x0,0x0,0x10000080,0x0,0x4000260,0x0,0x0,0x4000260,0x0,0xe9a00e78,0xe9a00e78,0x0,0x0,0x0,0x1,0x0,0x60,0x0,0x60,0x0,0x0,0x8,0x260,0x0,0x0,0x8,0x0,0x10,0x18,0x18,0x4000040,0x0,0x8,0x0,0x4000040,0x0,0x0,0x4000000,0x0,0x0,0x0,0x8000000,0x0,0x0,0x0,0xe9a00e78,0xe9a00e78,0x0,0x0,0x0,0x8,0x0,0x10,0x18,0x18,0x4000040,0x0,0xff4267b,0x0,0x4000000,0x0,0x278,0x0,0x0,0x0,0x0,0x8000278,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8000000,0x8000000,0x8000278,0x0,0x1,0x0,0x8000000,0x8000000,0x8000278,0x0,0x0,0x0,0x278,0x0,0x0,0x0,0x0,0x278,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x6,0x0,0x0,0x6,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x278,0x0,0xef40003,0xef40003,0xef4227b,0x0,0x1000400,0x0,0xff4267b,0x1,0x0,0x1,0x0,0x0,0xff4267b,0x80000,0x0,0xff4267b,0x0,0x6,0x0,0x0,0xe9200c00,0xe9200c00,0xe9200c00,0xe9200c00,0xe9a00e78,0xe9200c00,0x6,0x800278,0xe9200c00,0x0,0x8000000,0x800278,0xe1000000,0xe0000000,0x800278,0x800278,0x800278,0x0,0x800278,0x800278,0x0,0x78000,0x0,0x2f8,0x0,0x0,0x78000,0x0,0x0,0x278,0x8000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x278,0x278,0x0,0x0,0x0,0x278,0x0,0x0,0x278,0xc00,0x0,0x0,0x8000000,0x0,0xf0701ef8,0x0,0x0,0x2f8,0x0,0x2f8,0x0,0x0,0x40000,0x0,0x40000,0x0,0x0,0x40000,0x0,0x40000,0xf0000ef8,0x0,0x0,0xe0001000,0x600000,0x10700ef8,0xf0701ef8,0x0,0x0,0x0,0xe0000000,0x0,0x10000ef8,0x0,0xf0000ef8,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0xe4000200,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000200,0x900000,0x0,0x200,0x0,0x0,0x4000200,0x0,0x0,0x0,0x0,0x900000,0x0,0x0,0x200,0xe0000200,0x0,0x0,0xe4000200,0x0,0x0,0x278,0x0,0x278,0x0,0x1,0x0,0x1,0x0,0x0,0x0,0xf0701ef8,0x278,0xc00,}; + jj_la1_1 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x278,0x0,0x0,0x0,0xe9a00e78,0x0,0x0,0x0,0x0,0x0,0x278,0x10000080,0x0,0x0,0x0,0x10000080,0x0,0x4000260,0x0,0x0,0x4000260,0x0,0xe9a00e78,0xe9a00e78,0x0,0x0,0x0,0x1,0x0,0x60,0x0,0x60,0x0,0x0,0x8,0x260,0x0,0x0,0x8,0x0,0x10,0x18,0x18,0x4000040,0x0,0x8,0x0,0x4000040,0x0,0x0,0x4000000,0x0,0x0,0x0,0x8000000,0x0,0x0,0x0,0xe9a00e78,0xe9a00e78,0x0,0x0,0x0,0x8,0x0,0x10,0x18,0x18,0x4000040,0x0,0xff4267b,0x0,0x4000000,0x0,0x278,0x0,0x0,0x0,0x0,0x8000278,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8000000,0x8000000,0x8000278,0x0,0x1,0x0,0x8000000,0x8000000,0x8000278,0x0,0x0,0x0,0x278,0x0,0x0,0x0,0x0,0x278,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x6,0x0,0x0,0x6,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x278,0x0,0xef40003,0xef40003,0xef4227b,0x0,0x1000400,0x0,0xff4267b,0x1,0x0,0x1,0x0,0x0,0xff4267b,0x80000,0x0,0xff4267b,0x0,0x6,0x0,0x0,0xe9200c00,0xe9200c00,0xe9200c00,0xe9200c00,0xe9a00e78,0xe9200c00,0x6,0x800278,0xe9200c00,0x0,0x8000000,0x800278,0xe1000000,0xe0000000,0x800278,0x800278,0x800278,0x0,0x800278,0x800278,0x0,0x78000,0x0,0x2f8,0x0,0x0,0x78000,0x0,0x0,0x278,0x8000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x278,0x278,0x0,0x0,0x0,0x278,0x0,0x0,0x278,0xc00,0x0,0x0,0x8000000,0x0,0xf0701ef8,0x0,0x0,0x2f8,0x0,0x2f8,0x0,0x0,0x40000,0x0,0x40000,0x0,0x0,0x40000,0x0,0x40000,0xf0000ef8,0x0,0x0,0xe0001000,0x600000,0x10700ef8,0xf0701ef8,0x0,0x0,0x0,0xe0000000,0x0,0x10000ef8,0x0,0xf0000ef8,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0xe4000200,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000200,0x900000,0x0,0x200,0x0,0x0,0x4000200,0x0,0x0,0x0,0x0,0x900000,0x0,0x0,0x200,0xe0000200,0x0,0x0,0xe4000200,0x0,0x0,0x278,0x0,0x278,0x0,0x1,0x0,0x0,0xf0701ef8,0x0,0x1,0x0,0x1,0x0,0x0,0x0,0xf0701ef8,0x278,0xc00,}; } private static void jj_la1_init_2() { - jj_la1_2 = new int[] {0x0,0x0,0x8000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10000,0x14272,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x14272,0x14272,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x14272,0x14272,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffe0000,0xfffe0000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x400,0x0,0x0,0x0,0x0,0x400,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4272,0x4272,0x4272,0x4272,0x4272,0x272,0x0,0x0,0x272,0x4000,0x0,0x4000,0x272,0x272,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xa80,0x0,0x0,0x0,0xa80,0x0,0x0,0x0,0x0,0x0,0x1000,0x0,0x0,0x2f7f,0x1000,0x0,0xe00,0x0,0xe00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2f7f,0x0,0x0,0x2f7f,0x0,0x0,0x2f7f,0x0,0x800,0x0,0x2f7f,0x0,0x0,0x0,0x2f7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc33,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800,0x0,0x0,0x800,0x0,0x0,0x800,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800,0xc33,0x0,0x0,0xc33,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2f7f,0x0,0x0,}; + jj_la1_2 = new int[] {0x0,0x0,0x8000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10000,0x14272,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x14272,0x14272,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x14272,0x14272,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffe0000,0xfffe0000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x400,0x0,0x0,0x0,0x0,0x400,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4272,0x4272,0x4272,0x4272,0x4272,0x272,0x0,0x0,0x272,0x4000,0x0,0x4000,0x272,0x272,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xa80,0x0,0x0,0x0,0xa80,0x0,0x0,0x0,0x0,0x0,0x1000,0x0,0x0,0x2f7f,0x1000,0x0,0xe00,0x0,0xe00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2f7f,0x0,0x0,0x2f7f,0x0,0x0,0x2f7f,0x0,0x800,0x0,0x2f7f,0x0,0x0,0x0,0x2f7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc33,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800,0x0,0x0,0x800,0x0,0x0,0x800,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800,0xc33,0x0,0x0,0xc33,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2f7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2f7f,0x0,0x0,}; } private static void jj_la1_init_3() { - jj_la1_3 = new int[] {0x0,0x0,0x0,0x0,0x0,0x2,0x4,0x0,0x0,0x0,0x3ef8,0x3ef8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3ef8,0x3ef8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3ef8,0x3ef8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000000,0x0,0x3000000,0x0,0x4000000,0x0,0x0,0x0,0x0,0x0,0xc0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xdf000000,0xdf000000,0x0,0x0,0x0,0x0,0x0,0x800000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800000,0x0,0x0,0x0,0x0,0x800000,0x800000,0x0,0x0,0x0,0x0,0x0,0x800000,0x0,0x800000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800000,0x0,0x0,}; + jj_la1_3 = new int[] {0x0,0x0,0x0,0x0,0x0,0x2,0x4,0x0,0x0,0x0,0x3ef8,0x3ef8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3ef8,0x3ef8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3ef8,0x3ef8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000000,0x0,0x3000000,0x0,0x4000000,0x0,0x0,0x0,0x0,0x0,0xc0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xdf000000,0xdf000000,0x0,0x0,0x0,0x0,0x0,0x800000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800000,0x0,0x0,0x0,0x0,0x800000,0x800000,0x0,0x0,0x0,0x0,0x0,0x800000,0x0,0x800000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800000,0x0,0x0,}; } private static void jj_la1_init_4() { - jj_la1_4 = new int[] {0x30000,0x30000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000000,0x2000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000000,0x2000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3fc0000,0x0,0x8000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3fc0000,0x3fc0000,0x3fc0000,0x0,0x0,0x0,0x3fc0000,0x0,0x0,0x0,0x0,0x0,0x3fc0000,0x0,0x0,0x3fc0000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000000,0x0,0x0,0x2000000,0x0,0x0,0x0,0x2000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x33,0x0,0x0,0x0,0x0,0x0,0x0,0xc,0x0,0x0,0x0,0x0,0x807f,0x807f,0x0,0x0,0x0,0x0,0x0,0xff80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x5000000,0x0,0x5000000,0x0,0x0,0x5000000,0x0,0x5000000,0x9f80,0x0,0x0,0x0,0x0,0xff80,0xff80,0x0,0x0,0x9f80,0x9f80,0x0,0x0,0x0,0x9f80,0xf00,0x0,0x0,0x0,0x0,0x0,0x0,0x7f80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f80,0x0,0x0,0x100000,0x0,0x100000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff80,0x0,0x0,}; + jj_la1_4 = new int[] {0x60000,0x60000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000000,0x4000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000000,0x4000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f80000,0x0,0x10000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f80000,0x7f80000,0x7f80000,0x0,0x0,0x0,0x7f80000,0x0,0x0,0x0,0x0,0x0,0x7f80000,0x0,0x0,0x7f80000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000000,0x0,0x0,0x4000000,0x0,0x0,0x0,0x4000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x33,0x0,0x0,0x0,0x0,0x0,0x0,0xc,0x0,0x0,0x0,0x0,0x1007f,0x1007f,0x0,0x0,0x0,0x0,0x0,0x1ff80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xa000000,0x0,0xa000000,0x0,0x0,0xa000000,0x0,0xa000000,0x11f80,0x0,0x0,0x0,0x0,0x1ff80,0x1ff80,0x0,0x0,0x11f80,0x11f80,0x0,0x0,0x0,0x11f80,0xf00,0x0,0x0,0x0,0x0,0x0,0x0,0xff80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff80,0x0,0x0,0x200000,0x0,0x200000,0x0,0x0,0x0,0x0,0x1ff80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1ff80,0x0,0x0,}; } final private JJCalls[] jj_2_rtns = new JJCalls[29]; private boolean jj_rescan = false; @@ -12107,7 +12323,7 @@ public CssParser(java.io.InputStream stream, String encoding) { token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 334; i++) jj_la1[i] = -1; + for (int i = 0; i < 339; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } @@ -12122,7 +12338,7 @@ public void ReInit(java.io.InputStream stream, String encoding) { token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 334; i++) jj_la1[i] = -1; + for (int i = 0; i < 339; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } @@ -12133,7 +12349,7 @@ public CssParser(java.io.Reader stream) { token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 334; i++) jj_la1[i] = -1; + for (int i = 0; i < 339; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } @@ -12152,7 +12368,7 @@ public void ReInit(java.io.Reader stream) { token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 334; i++) jj_la1[i] = -1; + for (int i = 0; i < 339; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } @@ -12162,7 +12378,7 @@ public CssParser(CssParserTokenManager tm) { token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 334; i++) jj_la1[i] = -1; + for (int i = 0; i < 339; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } @@ -12172,7 +12388,7 @@ public void ReInit(CssParserTokenManager tm) { token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 334; i++) jj_la1[i] = -1; + for (int i = 0; i < 339; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } @@ -12201,8 +12417,13 @@ private Token jj_consume_token(int kind) throws ParseException { } @SuppressWarnings("serial") - static private final class LookaheadSuccess extends java.lang.Error { } - final private LookaheadSuccess jj_ls = new LookaheadSuccess(); + static private final class LookaheadSuccess extends java.lang.Error { + @Override + public Throwable fillInStackTrace() { + return this; + } + } + static private final LookaheadSuccess jj_ls = new LookaheadSuccess(); private boolean jj_scan_token(int kind) { if (jj_scanpos == jj_lastpos) { jj_la--; @@ -12298,12 +12519,12 @@ private void jj_add_error_token(int kind, int pos) { /** Generate ParseException. */ public ParseException generateParseException() { jj_expentries.clear(); - boolean[] la1tokens = new boolean[155]; + boolean[] la1tokens = new boolean[156]; if (jj_kind >= 0) { la1tokens[jj_kind] = true; jj_kind = -1; } - for (int i = 0; i < 334; i++) { + for (int i = 0; i < 339; i++) { if (jj_la1[i] == jj_gen) { for (int j = 0; j < 32; j++) { if ((jj_la1_0[i] & (1< | | + | } @@ -3191,6 +3197,7 @@ void term(CssExpression exp) : | func=mathclamp() { setValue(func, exp, operator, null, FUNCTION); } | func=attr() { setValue(func, exp, operator, null, FUNCTION); } | func=functionvar() { setValue(func, exp, operator, null, FUNCTIONVAR); } + | func=functionenv() { setValue(func, exp, operator, null, FUNCTIONENV); } | func=function() { setValue(func, exp, operator, null, FUNCTION); } | n= { setValue(new CssString(), exp, operator, n, STRING); } | n=
{ setValue(new CssSwitch(), exp, operator, n, DIV); } @@ -3510,6 +3517,11 @@ CssCheckableValue mathproduct() : c.markCssVariable(); } } + | v2=functionenv() { + if (v2.getType() == CssTypes.CSS_ENV) { + c.markCssVariable(); + } + } ) ) ) { @@ -3621,6 +3633,7 @@ char operator = ' '; | v=mathclamp() | v=attr() | v=functionvar() + | v=functionenv() ) { return v; } @@ -3646,6 +3659,38 @@ CssExpression exp = null; } } +CssCheckableValue functionenv() : +{ Token n; + CssExpression exp = null; + CssExpression e; + CssEnv env = null; + String skipped = null; +} +{ + ( )* n= ( )* { + env = new CssEnv(ac, convertIdent(n.image)); + e = new CssExpression(); + } + ( term(e) )* + ( ( )* try { + exp = expr() + } catch (ParseException pe) { + skipped = skip_to_matching_paren(); + // FIXME do something meaningful with that string + exp = null; + } + )? + { + env.setNumberExp(e); + if (exp != null) { + env.setDeclaration(exp); + } else if (skipped != null) { + // do something fancy here + } + return env; + } +} + CssCheckableValue functionvar() : { Token n; CssExpression exp = null; @@ -3946,6 +3991,7 @@ String skip_to_matching_paren() { case FUNCTIONROUND: case FUNCTIONATTR: case FUNCTIONVAR: + case FUNCTIONENV: s.append(tok.image); nesting++; getNextToken(); diff --git a/org/w3c/css/parser/analyzer/CssParserConstants.java b/org/w3c/css/parser/analyzer/CssParserConstants.java index ed95c45d9..e1e0b8d26 100644 --- a/org/w3c/css/parser/analyzer/CssParserConstants.java +++ b/org/w3c/css/parser/analyzer/CssParserConstants.java @@ -295,11 +295,13 @@ public interface CssParserConstants { /** RegularExpression Id. */ int FUNCTIONVAR = 142; /** RegularExpression Id. */ - int FUNCTION = 143; + int FUNCTIONENV = 143; /** RegularExpression Id. */ - int HTMLSTARTTAG = 144; + int FUNCTION = 144; /** RegularExpression Id. */ - int HTMLENDTAG = 145; + int HTMLSTARTTAG = 145; + /** RegularExpression Id. */ + int HTMLENDTAG = 146; /** Lexical state. */ int DEFAULT = 0; @@ -449,6 +451,7 @@ public interface CssParserConstants { "\"clamp(\"", "\"attr(\"", "\"var(\"", + "\"env(\"", "", "", "", diff --git a/org/w3c/css/parser/analyzer/CssParserTokenManager.java b/org/w3c/css/parser/analyzer/CssParserTokenManager.java index c44c42f6e..75f50a1b9 100644 --- a/org/w3c/css/parser/analyzer/CssParserTokenManager.java +++ b/org/w3c/css/parser/analyzer/CssParserTokenManager.java @@ -47,6 +47,7 @@ import org.w3c.css.values.CssCheckableValue; import org.w3c.css.values.CssColor; import org.w3c.css.values.CssComparator; +import org.w3c.css.values.CssEnv; import org.w3c.css.values.CssExpression; import org.w3c.css.values.CssFlexibleLength; import org.w3c.css.values.CssFrequency; @@ -79,6 +80,7 @@ import java.util.ArrayList; /** Token Manager. */ +@SuppressWarnings ("unused") public class CssParserTokenManager implements CssParserConstants { /** Debug output. */ @@ -95,16 +97,16 @@ private int jjMoveStringLiteralDfa0_0(){ switch(curChar) { case 33: - jjmatchedKind = 146; + jjmatchedKind = 147; return jjMoveNfa_0(7, 0); case 36: - jjmatchedKind = 147; + jjmatchedKind = 148; return jjMoveStringLiteralDfa1_0(0x1000000000000L, 0x0L, 0x0L); case 37: - jjmatchedKind = 148; + jjmatchedKind = 149; return jjMoveNfa_0(7, 0); case 38: - jjmatchedKind = 149; + jjmatchedKind = 150; return jjMoveNfa_0(7, 0); case 40: jjmatchedKind = 58; @@ -131,13 +133,13 @@ private int jjMoveStringLiteralDfa0_0(){ jjmatchedKind = 51; return jjMoveNfa_0(7, 0); case 60: - jjmatchedKind = 152; - return jjMoveStringLiteralDfa1_0(0x800000L, 0x0L, 0x4000000L); + jjmatchedKind = 153; + return jjMoveStringLiteralDfa1_0(0x800000L, 0x0L, 0x8000000L); case 61: jjmatchedKind = 50; return jjMoveNfa_0(7, 0); case 63: - jjmatchedKind = 151; + jjmatchedKind = 152; return jjMoveNfa_0(7, 0); case 64: return jjMoveStringLiteralDfa1_0(0x0L, 0x1fffffff8000L, 0x0L); @@ -150,7 +152,7 @@ private int jjMoveStringLiteralDfa0_0(){ case 94: return jjMoveStringLiteralDfa1_0(0x800000000000L, 0x0L, 0x0L); case 96: - jjmatchedKind = 150; + jjmatchedKind = 151; return jjMoveNfa_0(7, 0); case 65: case 97: @@ -161,6 +163,9 @@ private int jjMoveStringLiteralDfa0_0(){ case 68: case 100: return jjMoveStringLiteralDfa1_0(0x0L, 0x200000000000000L, 0x0L); + case 69: + case 101: + return jjMoveStringLiteralDfa1_0(0x0L, 0x0L, 0x8000L); case 72: case 104: return jjMoveStringLiteralDfa1_0(0x0L, 0xd000000000000000L, 0x0L); @@ -189,7 +194,7 @@ private int jjMoveStringLiteralDfa0_0(){ case 119: return jjMoveStringLiteralDfa1_0(0x0L, 0x800000000000000L, 0x0L); case 124: - jjmatchedKind = 153; + jjmatchedKind = 154; return jjMoveStringLiteralDfa1_0(0x4000000L, 0x0L, 0x0L); case 125: jjmatchedKind = 46; @@ -244,9 +249,9 @@ else if ((active0 & 0x2000000000000L) != 0L) jjmatchedKind = 49; jjmatchedPos = 1; } - else if ((active2 & 0x4000000L) != 0L) + else if ((active2 & 0x8000000L) != 0L) { - jjmatchedKind = 154; + jjmatchedKind = 155; jjmatchedPos = 1; } break; @@ -279,7 +284,7 @@ else if ((active2 & 0x4000000L) != 0L) return jjMoveStringLiteralDfa2_0(active0, 0L, active1, 0x800000000L, active2, 0L); case 78: case 110: - return jjMoveStringLiteralDfa2_0(active0, 0x2800000000L, active1, 0x400000000L, active2, 0L); + return jjMoveStringLiteralDfa2_0(active0, 0x2800000000L, active1, 0x400000000L, active2, 0x8000L); case 79: case 111: return jjMoveStringLiteralDfa2_0(active0, 0x4000000000L, active1, 0xc000000000000000L, active2, 0x840L); @@ -382,6 +387,9 @@ private int jjMoveStringLiteralDfa2_0(long old0, long active0, long old1, long a case 85: case 117: return jjMoveStringLiteralDfa3_0(active0, 0L, active1, 0x80000000000L, active2, 0x800L); + case 86: + case 118: + return jjMoveStringLiteralDfa3_0(active0, 0L, active1, 0L, active2, 0x8000L); default : break; } @@ -417,6 +425,11 @@ else if ((active2 & 0x4000L) != 0L) jjmatchedKind = 142; jjmatchedPos = 3; } + else if ((active2 & 0x8000L) != 0L) + { + jjmatchedKind = 143; + jjmatchedPos = 3; + } break; case 45: if ((active0 & 0x800000L) != 0L) @@ -1747,8 +1760,8 @@ else if (curChar == 62) jjstateSet[jjnewStateCnt++] = 90; break; case 98: - if (curChar == 62 && kind > 144) - kind = 144; + if (curChar == 62 && kind > 145) + kind = 145; break; case 100: if ((0xfc00ffffffffcbffL & l) != 0L) @@ -2148,8 +2161,8 @@ else if (curChar == 62) jjstateSet[jjnewStateCnt++] = 209; break; case 217: - if (curChar == 62 && kind > 145) - kind = 145; + if (curChar == 62 && kind > 146) + kind = 146; break; case 219: if ((0xfc00ffffffffcbffL & l) != 0L) @@ -3069,8 +3082,8 @@ else if (curChar == 62) { jjCheckNAddStates(1259, 1261); } break; case 452: - if (curChar == 40 && kind > 143) - kind = 143; + if (curChar == 40 && kind > 144) + kind = 144; break; case 454: if ((0xfc00ffffffffcbffL & l) != 0L) @@ -7986,7 +7999,8 @@ else if (jjmatchedPos == strPos && jjmatchedKind > strKind) null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, -null, null, "\41", "\44", "\45", "\46", "\140", "\77", "\74", "\174", "\74\75", }; +null, null, null, "\41", "\44", "\45", "\46", "\140", "\77", "\74", "\174", +"\74\75", }; protected Token jjFillToken() { final Token t; @@ -8373,10 +8387,10 @@ public void SwitchTo(int lexState) -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, }; static final long[] jjtoToken = { - 0xffffffffffe00001L, 0xff803fffffffffffL, 0x7ffffffL, + 0xffffffffffe00001L, 0xff803fffffffffffL, 0xfffffffL, }; static final long[] jjtoSkip = { 0x2L, 0x0L, 0x0L, diff --git a/org/w3c/css/parser/analyzer/ParseException.java b/org/w3c/css/parser/analyzer/ParseException.java index 1d22b2c2a..6e23c644c 100644 --- a/org/w3c/css/parser/analyzer/ParseException.java +++ b/org/w3c/css/parser/analyzer/ParseException.java @@ -65,7 +65,7 @@ public ParseException(String message) { /** * This is the last token that has been consumed successfully. If * this object has been created due to a parse error, the token - * followng this token will (therefore) be the first error token. + * following this token will (therefore) be the first error token. */ public Token currentToken; @@ -94,7 +94,7 @@ private static String initialise(Token currentToken, int[][] expectedTokenSequences, String[] tokenImage) { - StringBuffer expected = new StringBuffer(); + StringBuilder expected = new StringBuilder(); int maxSize = 0; for (int i = 0; i < expectedTokenSequences.length; i++) { if (maxSize < expectedTokenSequences[i].length) { @@ -108,36 +108,38 @@ private static String initialise(Token currentToken, } expected.append(EOL).append(" "); } - String retval = "Encountered \""; + StringBuilder retval = new StringBuilder("Encountered \""); Token tok = currentToken.next; for (int i = 0; i < maxSize; i++) { - if (i != 0) retval += " "; + if (i != 0) retval.append(" "); if (tok.kind == 0) { - retval += tokenImage[0]; + retval.append(tokenImage[0]); break; } - retval += " " + tokenImage[tok.kind]; - retval += " \""; - retval += add_escapes(tok.image); - retval += " \""; + retval.append(' ').append(tokenImage[tok.kind]); + retval.append(" \""); + retval.append(add_escapes(tok.image)); + retval.append(" \""); tok = tok.next; } - retval += "\" at line " + currentToken.next.beginLine + ", column " + currentToken.next.beginColumn; - retval += "." + EOL; - - + if (currentToken.next != null) { + retval.append("\" at line ").append(currentToken.next.beginLine).append(", column ").append(currentToken.next.beginColumn); + } + retval.append('.').append(EOL); + + if (expectedTokenSequences.length == 0) { // Nothing to add here } else { if (expectedTokenSequences.length == 1) { - retval += "Was expecting:" + EOL + " "; + retval.append("Was expecting:").append(EOL).append(" "); } else { - retval += "Was expecting one of:" + EOL + " "; + retval.append("Was expecting one of:").append(EOL).append(" "); } - retval += expected.toString(); + retval.append(expected.toString()); } - - return retval; + + return retval.toString(); } @@ -147,7 +149,7 @@ private static String initialise(Token currentToken, * string literal. */ static String add_escapes(String str) { - StringBuffer retval = new StringBuffer(); + StringBuilder retval = new StringBuilder(); char ch; for (int i = 0; i < str.length(); i++) { switch (str.charAt(i)) @@ -190,4 +192,4 @@ static String add_escapes(String str) { } } -/* JavaCC - OriginalChecksum=7d68a6a068da3c9ac8d23a9a0983a253 (do not edit this line) */ +/* JavaCC - OriginalChecksum=0131ff0db19134fe366be6509cf664b5 (do not edit this line) */ diff --git a/org/w3c/css/parser/analyzer/SimpleCharStream.java b/org/w3c/css/parser/analyzer/SimpleCharStream.java index 8d6b5a9a4..5c2080957 100644 --- a/org/w3c/css/parser/analyzer/SimpleCharStream.java +++ b/org/w3c/css/parser/analyzer/SimpleCharStream.java @@ -40,9 +40,10 @@ public class SimpleCharStream protected void ExpandBuff(boolean wrapAround) { - char[] newbuffer = new char[bufsize + 2048]; - int newbufline[] = new int[bufsize + 2048]; - int newbufcolumn[] = new int[bufsize + 2048]; + int newBufsize = bufsize >> 1; + char[] newbuffer = new char[newBufsize]; + int newbufline[] = new int[newBufsize]; + int newbufcolumn[] = new int[newBufsize]; try { @@ -82,11 +83,20 @@ protected void ExpandBuff(boolean wrapAround) } - bufsize += 2048; + bufsize = newBufsize; available = bufsize; tokenBegin = 0; } + static private final class EOSException extends java.io.IOException { + @Override + public Throwable fillInStackTrace() { + return this; + } + } + + private static final java.io.IOException STATIC_FILLBUFF_EXCEPTION = new EOSException(); + protected void FillBuff() throws java.io.IOException { if (maxNextCharInd == available) @@ -116,7 +126,7 @@ else if ((tokenBegin - available) < 2048) if ((i = inputStream.read(buffer, maxNextCharInd, available - maxNextCharInd)) == -1) { inputStream.close(); - throw new java.io.IOException(); + throw STATIC_FILLBUFF_EXCEPTION; } else maxNextCharInd += i; @@ -203,22 +213,20 @@ public char readChar() throws java.io.IOException return c; } - @Deprecated /** * @deprecated * @see #getEndColumn */ - + @Deprecated public int getColumn() { return bufcolumn[bufpos]; } - @Deprecated /** * @deprecated * @see #getEndLine */ - + @Deprecated public int getLine() { return bufline[bufpos]; } @@ -471,4 +479,4 @@ public void adjustBeginLineColumn(int newLine, int newCol) boolean getTrackLineColumn() { return trackLineColumn; } void setTrackLineColumn(boolean tlc) { trackLineColumn = tlc; } } -/* JavaCC - OriginalChecksum=ddaf552144d8059b9d34162bcfbf9de7 (do not edit this line) */ +/* JavaCC - OriginalChecksum=74d01505f011fb0ec28f849b15e21745 (do not edit this line) */ diff --git a/org/w3c/css/parser/analyzer/TokenMgrError.java b/org/w3c/css/parser/analyzer/TokenMgrError.java index 1ca6ff15a..2053d8163 100644 --- a/org/w3c/css/parser/analyzer/TokenMgrError.java +++ b/org/w3c/css/parser/analyzer/TokenMgrError.java @@ -3,6 +3,7 @@ package org.w3c.css.parser.analyzer; /** Token Manager Error. */ +@SuppressWarnings("all") public class TokenMgrError extends Error { @@ -48,7 +49,7 @@ public class TokenMgrError extends Error * equivalents in the given string */ protected static final String addEscapes(String str) { - StringBuffer retval = new StringBuffer(); + StringBuilder retval = new StringBuilder(); char ch; for (int i = 0; i < str.length(); i++) { switch (str.charAt(i)) @@ -95,7 +96,7 @@ protected static final String addEscapes(String str) { * token manager to indicate a lexical error. * Parameters : * EOFSeen : indicates if EOF caused the lexical error - * curLexState : lexical state in which this error occurred + * lexState : lexical state in which this error occurred * errorLine : line number when the error occurred * errorColumn : column number when the error occurred * errorAfter : prefix that was seen before this error occurred @@ -103,12 +104,12 @@ protected static final String addEscapes(String str) { * Note: You can customize the lexical error message by modifying this method. */ protected static String LexicalErr(boolean EOFSeen, int lexState, int errorLine, int errorColumn, String errorAfter, int curChar) { - char curChar1 = (char)curChar; - return("Lexical error at line " + - errorLine + ", column " + - errorColumn + ". Encountered: " + - (EOFSeen ? " " : ("\"" + addEscapes(String.valueOf(curChar1)) + "\"") + " (" + curChar + "), ") + - "after : \"" + addEscapes(errorAfter) + "\""); + return("Lexical error at line " + // + errorLine + ", column " + // + errorColumn + ". Encountered: " + // + (EOFSeen ? "" : ("'" + addEscapes(String.valueOf((char) curChar)) + "' (" + curChar + "),")) + // + (errorAfter == null || errorAfter.length() == 0 ? "" : " after prefix \"" + addEscapes(errorAfter) + "\"")) + // + (lexState == 0 ? "" : " (in lexical state " + lexState + ")"); } /** @@ -144,4 +145,4 @@ public TokenMgrError(boolean EOFSeen, int lexState, int errorLine, int errorColu this(LexicalErr(EOFSeen, lexState, errorLine, errorColumn, errorAfter, curChar), reason); } } -/* JavaCC - OriginalChecksum=71ef0692844cb226bd1fcd5a89d517eb (do not edit this line) */ +/* JavaCC - OriginalChecksum=41c661fbe23d0e9387b08d41dd191257 (do not edit this line) */ diff --git a/org/w3c/css/values/CssEnv.java b/org/w3c/css/values/CssEnv.java new file mode 100644 index 000000000..0a50acd00 --- /dev/null +++ b/org/w3c/css/values/CssEnv.java @@ -0,0 +1,493 @@ +// +// @author Yves Lafon +// +// (c) COPYRIGHT MIT, ERCIM, Keio, Beihang, 2021. +// Please first read the full copyright statement in file COPYRIGHT.html + +package org.w3c.css.values; + +import org.w3c.css.parser.CssError; +import org.w3c.css.util.ApplContext; +import org.w3c.css.util.InvalidParamException; + +import java.math.BigDecimal; +import java.util.HashMap; + +/** + * A CSS env(). + * + * @spec https://www.w3.org/TR/2025/WD-css-env-1-20250923/ + */ +public class CssEnv extends CssCheckableValue { + + public static final int type = CssTypes.CSS_ENV; + + private static final HashMap defaultTypes; + private static final HashMap defaultNumValues; + + static { + String[] _two_dimensions = {"viewport-segment-width", "viewport-segment-height", + "viewport-segment-top", "viewport-segment-left", "viewport-segment-bottom", + "viewport-segment-right"}; + String[] _zero_dimensions = {"safe-area-inset-top", "safe-area-inset-left", + "safe-area-inset-bottom", "safe-area-inset-right"}; + defaultTypes = new HashMap<>(); + defaultNumValues = new HashMap<>(); + for (String s : _zero_dimensions) { + defaultNumValues.put(s, 0); + defaultTypes.put(s, CssTypes.CSS_LENGTH); + } + for (String s : _two_dimensions) { + defaultNumValues.put(s, 2); + defaultTypes.put(s, CssTypes.CSS_LENGTH); + } + } + + public final int getRawType() { + return type; + } + + public final int getType() { + if (computed_type == CssTypes.CSS_UNKNOWN) { + if (defaultTypes.containsKey(env_name)) { + computed_type = defaultTypes.get(env_name); + // check + if (declaration != null && declaration.getCount() == 1) { + _exp_value = declaration.getValue(); + int declaration_type = _exp_value.getType(); + if (computed_type != declaration_type) { + // raise an error unless we need a length and get a 0 + if (computed_type == CssTypes.CSS_LENGTH) { + if (_exp_value.getType() == CssTypes.CSS_NUMBER) { + try { + if (_exp_value.getCheckableValue().isZero()) { + return computed_type; + } + } catch (InvalidParamException ignored) { + } + } + } + CssError error; + error = new CssError(new InvalidParamException("value", + _exp_value, toStringEmpty(), ac)); + ac.getFrame().addError(error); + } + } + return computed_type; + } else { + if (declaration != null && declaration.getCount() == 1) { + _exp_value = declaration.getValue(); + computed_type = _exp_value.getType(); + return computed_type; + } + } + return type; + } + return computed_type; + } + + String env_name = null; + ApplContext ac; + int computed_type = CssTypes.CSS_UNKNOWN; + CssExpression declaration = null; + CssExpression num_exp = null; + CssValue _exp_value = null; + String _toString = null; + + /** + * Create a new CssVariable + */ + public CssEnv() { + } + + public CssEnv(ApplContext ac, String env_name) { + this(ac, env_name, null, null); + } + + public CssEnv(String env_name, CssExpression num_exp) { + this(null, env_name, num_exp, null); + } + + public CssEnv(ApplContext ac, String env_name, CssExpression num_exp, CssExpression declaration) { + if (ac != null) { + this.ac = ac; + } + if (env_name != null) { + this.env_name = env_name; + } + if ((num_exp != null) && (num_exp.getCount() != 0)) { + this.num_exp = num_exp; + } + this.declaration = declaration; + } + + + public void set(String s, ApplContext ac) throws InvalidParamException { + // we don't support this way of setting the value + // as we rely on the parsing to create it incrementally + throw new InvalidParamException("unrecognize", s, ac); + } + + + public void setDeclaration(CssExpression exp) { + this.declaration = exp; + computed_type = CssTypes.CSS_UNKNOWN; + _toString = null; + } + + public void setNumberExp(CssExpression exp) + throws InvalidParamException { + this.num_exp = exp; + computed_type = CssTypes.CSS_UNKNOWN; + if (num_exp != null) { + num_exp.starts(); + while (!num_exp.end()) { + CssValue v = num_exp.getValue(); + if (v.getType() != CssTypes.CSS_NUMBER) { + throw new InvalidParamException("value", v.toString(), "env()", ac); + } + num_exp.next(); + } + num_exp.starts(); + } + _toString = null; + } + + /** + * Returns the value + */ + public Object get() { + return toString(); + } + + + public String toString() { + if (_toString == null) { + StringBuilder sb = new StringBuilder(); + sb.append("env(").append(env_name); + if (num_exp != null && (num_exp.getCount() > 0)) { + sb.append(" ").append(num_exp.toStringFromStart()); + } + if (declaration != null) { + sb.append(", ").append(declaration.toStringFromStart()); + } + sb.append(')'); + _toString = sb.toString(); + } + return _toString; + } + + public String toStringEmpty() { + StringBuilder sb = new StringBuilder(); + sb.append("env(").append(env_name).append(')'); + return sb.toString(); + } + + private boolean _isCheckableType(int type) { + switch (type) { + case CssTypes.CSS_ANGLE: + case CssTypes.CSS_FLEX: + case CssTypes.CSS_FREQUENCY: + case CssTypes.CSS_LENGTH: + case CssTypes.CSS_NUMBER: + case CssTypes.CSS_PERCENTAGE: + case CssTypes.CSS_SEMITONE: + case CssTypes.CSS_TIME: + case CssTypes.CSS_VOLUME: + return true; + default: + return false; + } + } + + private void checkDefinedVariableSyntax() + throws InvalidParamException { + if (defaultNumValues.containsKey(env_name)) { + int num_values = defaultNumValues.get(env_name); + if (num_values == 0 && (num_exp != null && num_exp.getCount() > 0)) { + throw new InvalidParamException("value", num_exp.getValue(), toStringEmpty(), ac); + } + if (num_values != 0 && ((num_exp == null) || (num_exp.getCount() != num_values))) { + throw new InvalidParamException("value", num_exp.getLastValue(), toStringEmpty(), ac); + } + // now check both values are integer + if (num_values > 0) { + num_exp.starts(); + while (!num_exp.end()) { + CssValue v = num_exp.getValue(); + // should be numbers + v.getNumber().checkInteger(ac, env_name); + num_exp.next(); + } + } + + } + } + + @Override + public CssCheckableValue getCheckableValue() { + if (_isCheckableType(computed_type)) { + return this; + } + throw new ClassCastException("unknown"); + } + + /** + * check if the value is positive or null + * + * @param ac the validation context + * @param callername the String value of the caller (property / media query / ...) + * @throws InvalidParamException + */ + @Override + public void checkPositiveness(ApplContext ac, String callername) + throws InvalidParamException { + if (_isCheckableType(computed_type)) { + if (_exp_value != null) { + _exp_value.getCheckableValue().checkPositiveness(ac, callername); + } else { + checkDefinedVariableSyntax(); + } + } + } + + /** + * check if the value is strictly positive + * + * @param ac the validation context + * @param callername the property the value is defined in + * @throws InvalidParamException + */ + @Override + public void checkStrictPositiveness(ApplContext ac, String callername) + throws InvalidParamException { + if (_isCheckableType(computed_type)) { + if (_exp_value != null) { + _exp_value.getCheckableValue().checkStrictPositiveness(ac, callername); + } else { + checkDefinedVariableSyntax(); + } + } + } + + /** + * check if the value is equal to zero + * + * @param ac the validation context + * @param callername the property the value is defined in + * @throws InvalidParamException + */ + @Override + public void checkEqualsZero(ApplContext ac, String callername) + throws InvalidParamException { + if (_isCheckableType(computed_type)) { + if (_exp_value != null) { + _exp_value.getCheckableValue().checkEqualsZero(ac, callername); + } else { + checkDefinedVariableSyntax(); + } + } + } + + /** + * warn if the value is not positive or null + * + * @param ac the validation context + * @param callername the property the value is defined in + */ + @Override + public boolean warnPositiveness(ApplContext ac, String callername) { + if (_isCheckableType(computed_type)) { + try { + if (_exp_value != null) { + return _exp_value.getCheckableValue().warnPositiveness(ac, callername); + } + } catch (InvalidParamException e) { + } + } + return false; + } + + /** + * warn if the value is not zero + * + * @param ac the validation context + * @param callername the property the value is defined in + */ + public boolean warnEqualsZero(ApplContext ac, String callername) { + if (_isCheckableType(computed_type)) { + try { + if (_exp_value != null) { + return _exp_value.getCheckableValue().warnEqualsZero(ac, callername); + } + } catch (InvalidParamException e) { + } + } + return false; + } + + @Override + public boolean isPositive() { + if (_isCheckableType(computed_type)) { + try { + if (_exp_value != null) { + return _exp_value.getCheckableValue().isPositive(); + } + } catch (Exception ignored) { + } + ; + } + return false; + } + + @Override + public boolean isStrictlyPositive() { + if (_isCheckableType(computed_type)) { + try { + if (_exp_value != null) { + return _exp_value.getCheckableValue().isStrictlyPositive(); + } + } catch (Exception ignored) { + } + ; + } + return false; + } + + @Override + public boolean isZero() { + if (_isCheckableType(computed_type)) { + try { + if (_exp_value != null) { + return _exp_value.getCheckableValue().isZero(); + } + } catch (Exception ignored) { + } + } + return false; + } + + @Override + public void checkInteger(ApplContext ac, String callername) + throws InvalidParamException { + if (_isCheckableType(computed_type)) { + if (_exp_value != null) { + _exp_value.getCheckableValue().checkInteger(ac, callername); + } else { + checkDefinedVariableSyntax(); + } + } + } + + @Override + public void setValue(BigDecimal v) { + // do nothing + } + + /** + * Compares two values for equality. + * + * @param value The other value. + */ + public boolean equals(Object value) { + return (value instanceof CssEnv && + this.env_name.equals(((CssEnv) value).env_name)); + } + + // extras for conflict resolution + @Override + public CssLength getLength() throws InvalidParamException { + if ((computed_type == CssTypes.CSS_LENGTH) + || (computed_type == CssTypes.CSS_NUMBER)) { + if (_exp_value != null) { + return _exp_value.getLength(); + } else { + // FIXME get something better here + // length is currently the only "weird" case + // as the only pre-defined type used + CssLength l = new CssLength(); + return l; + } + } + throw new ClassCastException("unknown"); + } + + @Override + public CssPercentage getPercentage() throws InvalidParamException { + if (computed_type != CssTypes.CSS_PERCENTAGE) { + throw new ClassCastException("unknown"); + } + return _exp_value.getPercentage(); + } + + @Override + public CssNumber getNumber() throws InvalidParamException { + if (computed_type != CssTypes.CSS_NUMBER) { + throw new ClassCastException("unknown"); + } + return _exp_value.getNumber(); + } + + @Override + public CssTime getTime() throws InvalidParamException { + if ((computed_type == CssTypes.CSS_TIME) + || (computed_type == CssTypes.CSS_NUMBER)) { + return _exp_value.getTime(); + } + throw new ClassCastException("unknown"); + } + + @Override + public CssAngle getAngle() throws InvalidParamException { + if ((computed_type == CssTypes.CSS_ANGLE) + || (computed_type == CssTypes.CSS_NUMBER)) { + return _exp_value.getAngle(); + } + throw new ClassCastException("unknown"); + } + + @Override + public CssFrequency getFrequency() throws InvalidParamException { + if ((computed_type == CssTypes.CSS_FREQUENCY) + || (computed_type == CssTypes.CSS_NUMBER)) { + return _exp_value.getFrequency(); + } + throw new ClassCastException("unknown"); + } + + @Override + public CssIdent getIdent() throws InvalidParamException { + if (computed_type != CssTypes.CSS_IDENT) { + throw new ClassCastException("unknown"); + } + return _exp_value.getIdent(); + } + + @Override + public CssHashIdent getHashIdent() throws InvalidParamException { + if (computed_type != CssTypes.CSS_HASH_IDENT) { + throw new ClassCastException("unknown"); + } + return _exp_value.getHashIdent(); + } + + @Override + public CssString getString() throws InvalidParamException { + if (computed_type != CssTypes.CSS_STRING) { + throw new ClassCastException("unknown"); + } + return _exp_value.getString(); + } + + @Override + public CssFunction getFunction() throws InvalidParamException { + if (computed_type != CssTypes.CSS_FUNCTION) { + throw new ClassCastException("unknown"); + } + CssFunction f = _exp_value.getFunction(); + if (f.getParameters() != null) { + f.getParameters().starts(); + } + return _exp_value.getFunction(); + } +} diff --git a/org/w3c/css/values/CssTypes.java b/org/w3c/css/values/CssTypes.java index 4a2fb92b4..12bc5ccf9 100644 --- a/org/w3c/css/values/CssTypes.java +++ b/org/w3c/css/values/CssTypes.java @@ -37,6 +37,7 @@ public class CssTypes { public static final int CSS_MATH_FUNCTION = 24; public static final int CSS_VARIABLE = 25; public static final int CSS_VARIABLE_DEFINITION = 26; + public static final int CSS_ENV = 27; // not really a property value public static final int CSS_ANPLUSB = 48;