Issue #2078 - Part 1: Update CSS rule processor to handle :is() and :where() CSS pseudo-classes

This modifies selector list parsing to accommodate being "forgiving". Aliases for the :is selector's former names were also included. Note that the older and prefixed variant `-moz-any` remains unforgiving.
This commit is contained in:
FranklinDM 2023-01-03 20:52:31 +08:00 committed by roytam1
commit 453b715ef6
6 changed files with 103 additions and 35 deletions

View file

@ -149,7 +149,7 @@ nsPseudoClassList::nsPseudoClassList(CSSPseudoClassType aType,
mNext(nullptr)
{
NS_ASSERTION(nsCSSPseudoClasses::HasSelectorListArg(aType) ||
nsCSSPseudoClasses::HasOptionalSelectorListArg(aType),
nsCSSPseudoClasses::HasOptionalSelectorListArg(aType),
"unexpected pseudo-class");
NS_ASSERTION(aSelectorList, "selector list expected");
MOZ_COUNT_CTOR(nsPseudoClassList);