| OLD | NEW |
| 1 %{ | 1 %{ |
| 2 | 2 |
| 3 /* | 3 /* |
| 4 * Copyright (C) 2002-2003 Lars Knoll (knoll@kde.org) | 4 * Copyright (C) 2002-2003 Lars Knoll (knoll@kde.org) |
| 5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 App
le Inc. All rights reserved. | 5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 App
le Inc. All rights reserved. |
| 6 * Copyright (C) 2006 Alexey Proskuryakov (ap@nypop.com) | 6 * Copyright (C) 2006 Alexey Proskuryakov (ap@nypop.com) |
| 7 * Copyright (C) 2008 Eric Seidel <eric@webkit.org> | 7 * Copyright (C) 2008 Eric Seidel <eric@webkit.org> |
| 8 * Copyright (C) 2012 Intel Corporation. All rights reserved. | 8 * Copyright (C) 2012 Intel Corporation. All rights reserved. |
| 9 * | 9 * |
| 10 * This library is free software; you can redistribute it and/or | 10 * This library is free software; you can redistribute it and/or |
| (...skipping 313 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 324 %type <keyframeRuleList> keyframe_rule_list | 324 %type <keyframeRuleList> keyframe_rule_list |
| 325 %type <valueList> key_list | 325 %type <valueList> key_list |
| 326 %type <value> key | 326 %type <value> key |
| 327 | 327 |
| 328 %type <id> property | 328 %type <id> property |
| 329 | 329 |
| 330 %type <selector> specifier | 330 %type <selector> specifier |
| 331 %type <selector> specifier_list | 331 %type <selector> specifier_list |
| 332 %type <selector> simple_selector | 332 %type <selector> simple_selector |
| 333 %type <selector> selector | 333 %type <selector> selector |
| 334 %type <selector> relative_selector | |
| 335 %type <selectorList> selector_list | 334 %type <selectorList> selector_list |
| 336 %type <selectorList> simple_selector_list | 335 %type <selectorList> simple_selector_list |
| 337 %type <selector> class | 336 %type <selector> class |
| 338 %type <selector> attrib | 337 %type <selector> attrib |
| 339 %type <selector> pseudo | 338 %type <selector> pseudo |
| 340 %type <selector> pseudo_page | 339 %type <selector> pseudo_page |
| 341 %type <selector> page_selector | 340 %type <selector> page_selector |
| 342 | 341 |
| 343 %type <boolean> declaration_list | 342 %type <boolean> declaration_list |
| 344 %type <boolean> decl_list | 343 %type <boolean> decl_list |
| (...skipping 764 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1109 $$ = parser->reusableSelectorVector(); | 1108 $$ = parser->reusableSelectorVector(); |
| 1110 $$->shrink(0); | 1109 $$->shrink(0); |
| 1111 $$->append(parser->sinkFloatingSelector($1)); | 1110 $$->append(parser->sinkFloatingSelector($1)); |
| 1112 } | 1111 } |
| 1113 | selector_list at_selector_end ',' maybe_space before_selector_group_item s
elector %prec UNIMPORTANT_TOK { | 1112 | selector_list at_selector_end ',' maybe_space before_selector_group_item s
elector %prec UNIMPORTANT_TOK { |
| 1114 $$ = $1; | 1113 $$ = $1; |
| 1115 $$->append(parser->sinkFloatingSelector($6)); | 1114 $$->append(parser->sinkFloatingSelector($6)); |
| 1116 } | 1115 } |
| 1117 ; | 1116 ; |
| 1118 | 1117 |
| 1119 relative_selector: | |
| 1120 combinator selector { | |
| 1121 $$ = $2; | |
| 1122 CSSParserSelector* end = $$; | |
| 1123 while (end->tagHistory()) | |
| 1124 end = end->tagHistory(); | |
| 1125 end->setRelation($1); | |
| 1126 } | |
| 1127 | selector | |
| 1128 ; | |
| 1129 | |
| 1130 selector: | 1118 selector: |
| 1131 simple_selector | 1119 simple_selector |
| 1132 | selector WHITESPACE | 1120 | selector WHITESPACE |
| 1133 | selector WHITESPACE simple_selector | 1121 | selector WHITESPACE simple_selector |
| 1134 { | 1122 { |
| 1135 $$ = $3; | 1123 $$ = $3; |
| 1136 CSSParserSelector* end = $$; | 1124 CSSParserSelector* end = $$; |
| 1137 while (end->tagHistory()) | 1125 while (end->tagHistory()) |
| 1138 end = end->tagHistory(); | 1126 end = end->tagHistory(); |
| 1139 end->setRelation(CSSSelector::Descendant); | 1127 end->setRelation(CSSSelector::Descendant); |
| (...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1363 $$->setMatch(CSSSelector::PseudoElement); | 1351 $$->setMatch(CSSSelector::PseudoElement); |
| 1364 $$->adoptSelectorVector(*parser->sinkFloatingSelectorVector($5)); | 1352 $$->adoptSelectorVector(*parser->sinkFloatingSelectorVector($5)); |
| 1365 $$->setValue($3); | 1353 $$->setValue($3); |
| 1366 CSSSelector::PseudoType type = $$->pseudoType(); | 1354 CSSSelector::PseudoType type = $$->pseudoType(); |
| 1367 if (type != CSSSelector::PseudoCue) | 1355 if (type != CSSSelector::PseudoCue) |
| 1368 YYERROR; | 1356 YYERROR; |
| 1369 } | 1357 } |
| 1370 | ':' ':' CUEFUNCTION selector_recovery closing_parenthesis { | 1358 | ':' ':' CUEFUNCTION selector_recovery closing_parenthesis { |
| 1371 YYERROR; | 1359 YYERROR; |
| 1372 } | 1360 } |
| 1373 | ':' ':' DISTRIBUTEDFUNCTION maybe_space relative_selector closing_parenthe
sis { | |
| 1374 $$ = parser->createFloatingSelector(); | |
| 1375 $$->setMatch(CSSSelector::PseudoElement); | |
| 1376 $$->setFunctionArgumentSelector($5); | |
| 1377 parser->tokenToLowerCase($3); | |
| 1378 $$->setValue($3); | |
| 1379 } | |
| 1380 | ':' ':' DISTRIBUTEDFUNCTION selector_recovery closing_parenthesis { | |
| 1381 YYERROR; | |
| 1382 } | |
| 1383 // use by :-webkit-any. | 1361 // use by :-webkit-any. |
| 1384 // FIXME: should we support generic selectors here or just simple_selectors? | 1362 // FIXME: should we support generic selectors here or just simple_selectors? |
| 1385 // Use simple_selector_list for now to match -moz-any. | 1363 // Use simple_selector_list for now to match -moz-any. |
| 1386 // See http://lists.w3.org/Archives/Public/www-style/2010Sep/0566.html for s
ome | 1364 // See http://lists.w3.org/Archives/Public/www-style/2010Sep/0566.html for s
ome |
| 1387 // related discussion with respect to :not. | 1365 // related discussion with respect to :not. |
| 1388 | ':' ANYFUNCTION maybe_space simple_selector_list maybe_space closing_paren
thesis { | 1366 | ':' ANYFUNCTION maybe_space simple_selector_list maybe_space closing_paren
thesis { |
| 1389 $$ = parser->createFloatingSelector(); | 1367 $$ = parser->createFloatingSelector(); |
| 1390 $$->setMatch(CSSSelector::PseudoClass); | 1368 $$->setMatch(CSSSelector::PseudoClass); |
| 1391 $$->adoptSelectorVector(*parser->sinkFloatingSelectorVector($4)); | 1369 $$->adoptSelectorVector(*parser->sinkFloatingSelectorVector($4)); |
| 1392 parser->tokenToLowerCase($2); | 1370 parser->tokenToLowerCase($2); |
| (...skipping 503 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1896 ; | 1874 ; |
| 1897 | 1875 |
| 1898 rule_error_recovery: | 1876 rule_error_recovery: |
| 1899 /* empty */ | 1877 /* empty */ |
| 1900 | rule_error_recovery error | 1878 | rule_error_recovery error |
| 1901 | rule_error_recovery invalid_square_brackets_block | 1879 | rule_error_recovery invalid_square_brackets_block |
| 1902 | rule_error_recovery invalid_parentheses_block | 1880 | rule_error_recovery invalid_parentheses_block |
| 1903 ; | 1881 ; |
| 1904 | 1882 |
| 1905 %% | 1883 %% |
| OLD | NEW |