mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 20:28:11 +00:00
LibWeb: Return SelectorParsingResult from all selector parsing functions
This will allow us to know why a selector failed to parse, in situations where that matters. (Like, when a selector includes vendor prefixes...)
This commit is contained in:
parent
e30b702c6c
commit
83cd2eef8f
2 changed files with 44 additions and 46 deletions
|
@ -100,6 +100,11 @@ public:
|
|||
RefPtr<StyleValue> parse_as_css_value(PropertyID);
|
||||
|
||||
private:
|
||||
enum class SelectorParsingResult {
|
||||
Done,
|
||||
SyntaxError,
|
||||
};
|
||||
|
||||
template<typename T>
|
||||
NonnullRefPtr<CSSStyleSheet> parse_a_stylesheet(TokenStream<T>&);
|
||||
template<typename T>
|
||||
|
@ -117,13 +122,13 @@ private:
|
|||
template<typename T>
|
||||
Vector<Vector<StyleComponentValueRule>> parse_a_comma_separated_list_of_component_values(TokenStream<T>&);
|
||||
template<typename T>
|
||||
Optional<SelectorList> parse_a_selector(TokenStream<T>&);
|
||||
Result<SelectorList, SelectorParsingResult> parse_a_selector(TokenStream<T>&);
|
||||
template<typename T>
|
||||
Optional<SelectorList> parse_a_relative_selector(TokenStream<T>&);
|
||||
Result<SelectorList, SelectorParsingResult> parse_a_relative_selector(TokenStream<T>&);
|
||||
template<typename T>
|
||||
Optional<SelectorList> parse_a_selector_list(TokenStream<T>&);
|
||||
Result<SelectorList, SelectorParsingResult> parse_a_selector_list(TokenStream<T>&);
|
||||
template<typename T>
|
||||
Optional<SelectorList> parse_a_relative_selector_list(TokenStream<T>&);
|
||||
Result<SelectorList, SelectorParsingResult> parse_a_relative_selector_list(TokenStream<T>&);
|
||||
|
||||
Optional<Selector::SimpleSelector::ANPlusBPattern> parse_a_n_plus_b_pattern(TokenStream<StyleComponentValueRule>&);
|
||||
|
||||
|
@ -206,12 +211,7 @@ private:
|
|||
static OwnPtr<CalculatedStyleValue::CalcNumberSumPartWithOperator> parse_calc_number_sum_part_with_operator(ParsingContext const&, TokenStream<StyleComponentValueRule>&);
|
||||
static OwnPtr<CalculatedStyleValue::CalcSum> parse_calc_expression(ParsingContext const&, Vector<StyleComponentValueRule> const&);
|
||||
|
||||
enum class SelectorParsingResult {
|
||||
Done,
|
||||
SyntaxError,
|
||||
};
|
||||
|
||||
RefPtr<Selector> parse_complex_selector(TokenStream<StyleComponentValueRule>&, bool allow_starting_combinator);
|
||||
Result<NonnullRefPtr<Selector>, SelectorParsingResult> parse_complex_selector(TokenStream<StyleComponentValueRule>&, bool allow_starting_combinator);
|
||||
Result<Selector::CompoundSelector, SelectorParsingResult> parse_compound_selector(TokenStream<StyleComponentValueRule>&);
|
||||
Optional<Selector::Combinator> parse_selector_combinator(TokenStream<StyleComponentValueRule>&);
|
||||
Result<Selector::SimpleSelector, SelectorParsingResult> parse_simple_selector(TokenStream<StyleComponentValueRule>&);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue