Title: [173011] trunk/Source/WebCore
Revision
173011
Author
[email protected]
Date
2014-08-27 12:15:52 -0700 (Wed, 27 Aug 2014)

Log Message

Update the CSS Grammar selector names to get closer to the latest terminology
https://bugs.webkit.org/show_bug.cgi?id=136277

Patch by Benjamin Poulain <[email protected]> on 2014-08-27
Reviewed by Andreas Kling.

CSS Selector Level 4 gives useful definitions for various parts of a selector
(see http://dev.w3.org/csswg/selectors4/#structure). This patch updates our names to be closer
to that spec.

Stricto sensu, our definition of "simple selector list" is wrong. I did not attempt to fix this
because updates of CSS Selector Level 4 and WebVTT will eventually make that whole concept useless.

* css/CSSGrammar.y.in:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (173010 => 173011)


--- trunk/Source/WebCore/ChangeLog	2014-08-27 19:14:24 UTC (rev 173010)
+++ trunk/Source/WebCore/ChangeLog	2014-08-27 19:15:52 UTC (rev 173011)
@@ -1,3 +1,19 @@
+2014-08-27  Benjamin Poulain  <[email protected]>
+
+        Update the CSS Grammar selector names to get closer to the latest terminology
+        https://bugs.webkit.org/show_bug.cgi?id=136277
+
+        Reviewed by Andreas Kling.
+
+        CSS Selector Level 4 gives useful definitions for various parts of a selector
+        (see http://dev.w3.org/csswg/selectors4/#structure). This patch updates our names to be closer
+        to that spec.
+
+        Stricto sensu, our definition of "simple selector list" is wrong. I did not attempt to fix this
+        because updates of CSS Selector Level 4 and WebVTT will eventually make that whole concept useless.
+
+        * css/CSSGrammar.y.in:
+
 2014-08-27  Gyuyoung Kim  <[email protected]>
 
         [EFL] Unskip compositing test

Modified: trunk/Source/WebCore/css/CSSGrammar.y.in (173010 => 173011)


--- trunk/Source/WebCore/css/CSSGrammar.y.in	2014-08-27 19:14:24 UTC (rev 173010)
+++ trunk/Source/WebCore/css/CSSGrammar.y.in	2014-08-27 19:15:52 UTC (rev 173011)
@@ -275,8 +275,8 @@
 %type <id> property
 
 %union { CSSParserSelector* selector; }
-%type <selector> attrib class page_selector pseudo pseudo_page selector selector_with_trailing_whitespace simple_selector specifier specifier_list
-%destructor { delete $$; } attrib class page_selector pseudo pseudo_page selector selector_with_trailing_whitespace simple_selector specifier specifier_list
+%type <selector> attrib class page_selector pseudo pseudo_page complex_selector complex_selector_with_trailing_whitespace compound_selector specifier specifier_list
+%destructor { delete $$; } attrib class page_selector pseudo pseudo_page complex_selector complex_selector_with_trailing_whitespace compound_selector specifier specifier_list
 
 %union { Vector<std::unique_ptr<CSSParserSelector>>* selectorList; }
 %type <selectorList> selector_list simple_selector_list
@@ -1037,7 +1037,7 @@
 before_selector_group_item: { parser->markSelectorStart(); } ;
 
 selector_list:
-    selector %prec UNIMPORTANT_TOK {
+    complex_selector %prec UNIMPORTANT_TOK {
         $$ = nullptr;
         if ($1) {
             $$ = parser->createSelectorVector().release();
@@ -1045,7 +1045,7 @@
             parser->updateLastSelectorLineAndPosition();
         }
     }
-    | selector_list at_selector_end ',' maybe_space before_selector_group_item selector %prec UNIMPORTANT_TOK {
+    | selector_list at_selector_end ',' maybe_space before_selector_group_item complex_selector %prec UNIMPORTANT_TOK {
         std::unique_ptr<Vector<std::unique_ptr<CSSParserSelector>>> selectorList($1);
         std::unique_ptr<CSSParserSelector> selector($6);
         $$ = nullptr;
@@ -1061,13 +1061,13 @@
     }
    ;
 
-selector_with_trailing_whitespace:
-    selector WHITESPACE;
+complex_selector_with_trailing_whitespace:
+    complex_selector WHITESPACE;
 
-selector:
-    simple_selector
-    | selector_with_trailing_whitespace
-    | selector_with_trailing_whitespace simple_selector {
+complex_selector:
+    compound_selector
+    | complex_selector_with_trailing_whitespace
+    | complex_selector_with_trailing_whitespace compound_selector {
         std::unique_ptr<CSSParserSelector> left($1);
         std::unique_ptr<CSSParserSelector> right($2);
         $$ = nullptr;
@@ -1076,7 +1076,7 @@
             $$ = right.release();
         }
     }
-    | selector combinator simple_selector {
+    | complex_selector combinator compound_selector {
         std::unique_ptr<CSSParserSelector> left($1);
         std::unique_ptr<CSSParserSelector> right($3);
         $$ = nullptr;
@@ -1085,7 +1085,7 @@
             $$ = right.release();
         }
     }
-    | selector error {
+    | complex_selector error {
         $$ = nullptr;
         delete $1;
     }
@@ -1097,7 +1097,7 @@
     | IDENT '|'
 ;
 
-simple_selector:
+compound_selector:
     element_name {
         $$ = new CSSParserSelector(QualifiedName(nullAtom, $1, parser->m_defaultNamespace));
     }
@@ -1127,14 +1127,14 @@
   ;
 
 simple_selector_list:
-    simple_selector %prec UNIMPORTANT_TOK {
+    compound_selector %prec UNIMPORTANT_TOK {
         $$ = nullptr;
         if ($1) {
             $$ = parser->createSelectorVector().release();
             $$->append(std::unique_ptr<CSSParserSelector>($1));
         }
     }
-    | simple_selector_list maybe_space ',' maybe_space simple_selector %prec UNIMPORTANT_TOK {
+    | simple_selector_list maybe_space ',' maybe_space compound_selector %prec UNIMPORTANT_TOK {
         std::unique_ptr<Vector<std::unique_ptr<CSSParserSelector>>> list($1);
         std::unique_ptr<CSSParserSelector> selector($5);
         $$ = nullptr;
@@ -1331,7 +1331,7 @@
         $$ = selector.release();
     }
     // used by :not
-    | ':' NOTFUNCTION maybe_space simple_selector maybe_space ')' {
+    | ':' NOTFUNCTION maybe_space compound_selector maybe_space ')' {
         std::unique_ptr<CSSParserSelector> selector($4);
         $$ = nullptr;
         if (selector && selector->isSimple()) {
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to