Module selectors::matching [] [src]

Structs

ElementSelectorFlags

Set of flags that are set on either the element or its parent (depending on the flag) if the element could potentially match a selector.

MatchingContext

Data associated with the matching process for a element. This context is used across many selectors for an element, so it's not appropriate for transient data that applies to only a single selector.

StyleRelations

Set of flags that determine the different kind of elements affected by the selector matching process.

Enums

MatchingMode

What kind of selector matching mode we should use.

Constants

AFFECTED_BY_ID_SELECTOR

Whether this element is affected by an ID selector.

AFFECTED_BY_PRESENTATIONAL_HINTS

Whether this element is affected by presentational hints. This is computed externally (that is, in Servo).

AFFECTED_BY_PSEUDO_ELEMENTS

Whether this element has pseudo-element styles. Computed externally.

AFFECTED_BY_STYLE_ATTRIBUTE

Whether this element has a style attribute. Computed externally.

HAS_EDGE_CHILD_SELECTOR

When a child is added or removed from the parent, the first and last children must be restyled, because they may match :first-child, :last-child, or :only-child.

HAS_EMPTY_SELECTOR

The element has an empty selector, so when a child is appended we might need to restyle the parent completely.

HAS_SLOW_SELECTOR

When a child is added or removed from the parent, all the children must be restyled, because they may match :nth-last-child, :last-of-type, :nth-last-of-type, or :only-of-type.

HAS_SLOW_SELECTOR_LATER_SIBLINGS

When a child is added or removed from the parent, any later children must be restyled, because they may match :nth-child, :first-of-type, or :nth-of-type.

Statics

RECOMMENDED_SELECTOR_BLOOM_FILTER_SIZE

Functions

matches_complex_selector

Matches a complex selector.

matches_selector

Matches an inner selector.

matches_selector_list