コード例 #1
0
bool CSSSelectorList::hasShadowDistributedAt(size_t index) const
{
    SelectorHasShadowDistributed functor;
    return forEachTagSelector(functor, selectorAt(index));
}
コード例 #2
0
bool CSSSelectorList::selectorCrossesTreeScopes(size_t index) const
{
    SelectorCrossesTreeScopes functor;
    return forEachTagSelector(functor, selectorAt(index));
}
コード例 #3
0
bool CSSSelectorList::hasCombinatorCrossingTreeBoundaryAt(size_t index) const
{
    SelectorHasCombinatorCrossingTreeBoundary functor;
    return forEachTagSelector(functor, selectorAt(index));
}
コード例 #4
0
bool CSSSelectorList::selectorNeedsUpdatedDistribution(size_t index) const
{
    return forEachTagSelector([](const CSSSelector& selector) -> bool {
        return selector.relationIsAffectedByPseudoContent() || selector.pseudoType() == CSSSelector::PseudoSlotted || selector.pseudoType() == CSSSelector::PseudoHostContext;
    }, selectorAt(index));
}
コード例 #5
0
bool CSSSelectorList::selectorUsesDeepCombinatorOrShadowPseudo(size_t index) const
{
    return forEachTagSelector([](const CSSSelector& selector) -> bool {
        return selector.relation() == CSSSelector::ShadowDeep || selector.pseudoType() == CSSSelector::PseudoShadow;
    }, selectorAt(index));
}
コード例 #6
0
bool CSSSelectorList::selectorHasSlottedPseudo(size_t index) const
{
    return forEachTagSelector([](const CSSSelector& selector) ->  bool {
        return selector.pseudoType() == CSSSelector::PseudoSlotted;
    }, selectorAt(index));
}
コード例 #7
0
bool CSSSelectorList::selectorHasContentPseudo(size_t index) const
{
    return forEachTagSelector([](const CSSSelector& selector) -> bool {
        return selector.relationIsAffectedByPseudoContent();
    }, selectorAt(index));
}