diff --git a/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp b/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp index 4ca81a9c1f..c367dd1b95 100644 --- a/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp +++ b/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp @@ -155,11 +155,11 @@ Parser::~Parser() NonnullRefPtr Parser::parse_as_stylesheet() { - return parse_as_stylesheet(m_token_stream); + return parse_a_stylesheet(m_token_stream); } template -NonnullRefPtr Parser::parse_as_stylesheet(TokenStream& tokens) +NonnullRefPtr Parser::parse_a_stylesheet(TokenStream& tokens) { dbgln_if(CSS_PARSER_DEBUG, "Parser::parse_as_stylesheet"); @@ -179,7 +179,7 @@ NonnullRefPtr Parser::parse_as_stylesheet(TokenStream& tokens) return stylesheet; } -Optional Parser::parse_a_selector() +Optional Parser::parse_as_selector() { return parse_a_selector(m_token_stream); } @@ -196,7 +196,7 @@ Optional Parser::parse_a_selector(TokenStream& tokens) return {}; } -Optional Parser::parse_a_relative_selector() +Optional Parser::parse_as_relative_selector() { return parse_a_relative_selector(m_token_stream); } @@ -218,7 +218,7 @@ Optional Parser::parse_a_selector_list(TokenStream& tokens) { dbgln_if(CSS_PARSER_DEBUG, "Parser::parse_a_selector_list"); - auto comma_separated_lists = parse_as_comma_separated_list_of_component_values(tokens); + auto comma_separated_lists = parse_a_comma_separated_list_of_component_values(tokens); NonnullRefPtrVector selectors; for (auto& selector_parts : comma_separated_lists) { @@ -241,7 +241,7 @@ Optional Parser::parse_a_relative_selector_list(TokenStream& to { dbgln_if(CSS_PARSER_DEBUG, "Parser::parse_a_relative_selector_list"); - auto comma_separated_lists = parse_as_comma_separated_list_of_component_values(tokens); + auto comma_separated_lists = parse_a_comma_separated_list_of_component_values(tokens); NonnullRefPtrVector selectors; for (auto& selector_parts : comma_separated_lists) { @@ -991,11 +991,11 @@ Vector Parser::consume_a_list_of_declarations(TokenStream Parser::parse_as_rule() { - return parse_as_rule(m_token_stream); + return parse_a_rule(m_token_stream); } template -RefPtr Parser::parse_as_rule(TokenStream& tokens) +RefPtr Parser::parse_a_rule(TokenStream& tokens) { dbgln_if(CSS_PARSER_DEBUG, "Parser::parse_as_rule"); @@ -1030,11 +1030,11 @@ RefPtr Parser::parse_as_rule(TokenStream& tokens) NonnullRefPtrVector Parser::parse_as_list_of_rules() { - return parse_as_list_of_rules(m_token_stream); + return parse_a_list_of_rules(m_token_stream); } template -NonnullRefPtrVector Parser::parse_as_list_of_rules(TokenStream& tokens) +NonnullRefPtrVector Parser::parse_a_list_of_rules(TokenStream& tokens) { dbgln_if(CSS_PARSER_DEBUG, "Parser::parse_as_list_of_rules"); @@ -1052,11 +1052,11 @@ NonnullRefPtrVector Parser::parse_as_list_of_rules(TokenStream& toke Optional Parser::parse_as_declaration() { - return parse_as_declaration(m_token_stream); + return parse_a_declaration(m_token_stream); } template -Optional Parser::parse_as_declaration(TokenStream& tokens) +Optional Parser::parse_a_declaration(TokenStream& tokens) { dbgln_if(CSS_PARSER_DEBUG, "Parser::parse_as_declaration"); @@ -1077,11 +1077,11 @@ Optional Parser::parse_as_declaration(TokenStream& tokens) RefPtr Parser::parse_as_list_of_declarations() { - return parse_as_list_of_declarations(m_token_stream); + return parse_a_list_of_declarations(m_token_stream); } template -RefPtr Parser::parse_as_list_of_declarations(TokenStream& tokens) +RefPtr Parser::parse_a_list_of_declarations(TokenStream& tokens) { dbgln_if(CSS_PARSER_DEBUG, "Parser::parse_as_list_of_declarations"); @@ -1114,11 +1114,11 @@ RefPtr Parser::parse_as_list_of_declarations(TokenStream Optional Parser::parse_as_component_value() { - return parse_as_component_value(m_token_stream); + return parse_a_component_value(m_token_stream); } template -Optional Parser::parse_as_component_value(TokenStream& tokens) +Optional Parser::parse_a_component_value(TokenStream& tokens) { dbgln_if(CSS_PARSER_DEBUG, "Parser::parse_as_component_value"); @@ -1144,11 +1144,11 @@ Optional Parser::parse_as_component_value(TokenStream Parser::parse_as_list_of_component_values() { - return parse_as_list_of_component_values(m_token_stream); + return parse_a_list_of_component_values(m_token_stream); } template -Vector Parser::parse_as_list_of_component_values(TokenStream& tokens) +Vector Parser::parse_a_list_of_component_values(TokenStream& tokens) { dbgln_if(CSS_PARSER_DEBUG, "Parser::parse_as_list_of_component_values"); @@ -1167,11 +1167,11 @@ Vector Parser::parse_as_list_of_component_values(TokenS Vector> Parser::parse_as_comma_separated_list_of_component_values() { - return parse_as_comma_separated_list_of_component_values(m_token_stream); + return parse_a_comma_separated_list_of_component_values(m_token_stream); } template -Vector> Parser::parse_as_comma_separated_list_of_component_values(TokenStream& tokens) +Vector> Parser::parse_a_comma_separated_list_of_component_values(TokenStream& tokens) { dbgln_if(CSS_PARSER_DEBUG, "Parser::parse_as_comma_separated_list_of_component_values"); @@ -1293,7 +1293,7 @@ RefPtr Parser::convert_to_declaration(NonnullRefPtrm_values); - return parse_as_list_of_declarations(stream); + return parse_a_list_of_declarations(stream); } Optional Parser::convert_to_style_property(StyleDeclarationRule& declaration) diff --git a/Userland/Libraries/LibWeb/CSS/Parser/Parser.h b/Userland/Libraries/LibWeb/CSS/Parser/Parser.h index 0baa8c5ffd..2e2f35a34d 100644 --- a/Userland/Libraries/LibWeb/CSS/Parser/Parser.h +++ b/Userland/Libraries/LibWeb/CSS/Parser/Parser.h @@ -75,59 +75,56 @@ public: // The normal parser entry point, for parsing stylesheets. NonnullRefPtr parse_as_stylesheet(); - template - NonnullRefPtr parse_as_stylesheet(TokenStream&); - // For the content of at-rules such as @media. It differs from "Parse a stylesheet" in the handling of and . NonnullRefPtrVector parse_as_list_of_rules(); - template - NonnullRefPtrVector parse_as_list_of_rules(TokenStream&); - // For use by the CSSStyleSheet#insertRule method, and similar functions which might exist, which parse text into a single rule. RefPtr parse_as_rule(); - template - RefPtr parse_as_rule(TokenStream&); - // Used in @supports conditions. [CSS3-CONDITIONAL] Optional parse_as_declaration(); - template - Optional parse_as_declaration(TokenStream&); - // For the contents of a style attribute, which parses text into the contents of a single style rule. RefPtr parse_as_list_of_declarations(); - template - RefPtr parse_as_list_of_declarations(TokenStream&); - // For things that need to consume a single value, like the parsing rules for attr(). Optional parse_as_component_value(); - template - Optional parse_as_component_value(TokenStream&); - // For the contents of presentational attributes, which parse text into a single declaration’s value, or for parsing a stand-alone selector [SELECT] or list of Media Queries [MEDIAQ], as in Selectors API or the media HTML attribute. Vector parse_as_list_of_component_values(); - template - Vector parse_as_list_of_component_values(TokenStream&); - Vector> parse_as_comma_separated_list_of_component_values(); - template - Vector> parse_as_comma_separated_list_of_component_values(TokenStream&); - Optional parse_a_n_plus_b_pattern(TokenStream&); - - // FIXME: https://www.w3.org/TR/selectors-4/ // Contrary to the name, these parse a comma-separated list of selectors, according to the spec. - Optional parse_a_selector(); - template - Optional parse_a_selector(TokenStream&); - - Optional parse_a_relative_selector(); - template - Optional parse_a_relative_selector(TokenStream&); + Optional parse_as_selector(); + Optional parse_as_relative_selector(); + // FIXME: These want to be private, but StyleResolver still uses them for now. RefPtr parse_css_value(PropertyID, TokenStream&); static RefPtr parse_css_value(ParsingContext const&, PropertyID, StyleComponentValueRule const&); private: + template + NonnullRefPtr parse_a_stylesheet(TokenStream&); + template + NonnullRefPtrVector parse_a_list_of_rules(TokenStream&); + template + RefPtr parse_a_rule(TokenStream&); + template + Optional parse_a_declaration(TokenStream&); + template + RefPtr parse_a_list_of_declarations(TokenStream&); + template + Optional parse_a_component_value(TokenStream&); + template + Vector parse_a_list_of_component_values(TokenStream&); + template + Vector> parse_a_comma_separated_list_of_component_values(TokenStream&); + template + Optional parse_a_selector(TokenStream&); + template + Optional parse_a_relative_selector(TokenStream&); + template + Optional parse_a_selector_list(TokenStream&); + template + Optional parse_a_relative_selector_list(TokenStream&); + + Optional parse_a_n_plus_b_pattern(TokenStream&); + [[nodiscard]] NonnullRefPtrVector consume_a_list_of_rules(bool top_level); template [[nodiscard]] NonnullRefPtrVector consume_a_list_of_rules(TokenStream&, bool top_level); @@ -191,11 +188,6 @@ private: static OwnPtr parse_calc_number_sum_part_with_operator(ParsingContext const&, TokenStream&); static OwnPtr parse_calc_expression(ParsingContext const&, Vector const&); - template - Optional parse_a_selector_list(TokenStream&); - template - Optional parse_a_relative_selector_list(TokenStream&); - enum class SelectorParsingResult { Done, SyntaxError,