Expand description
Code for invalidations due to state or attribute changes.
Structs§
- Additional
Relative Selector Invalidation Map - A map to store invalidation dependencies specific to relative selectors. This keeps a lot more data than the usual map, because any change can generate upward traversals that need to be handled separately.
- Dependency
- Mapping between (partial) CompoundSelectors (and the combinator to their right) and the states and attributes they depend on.
- Document
State Dependency - The same, but for document state selectors.
- Invalidation
Map - A map where we store invalidations.
- State
Dependency - The same, but for state selectors, which can track more exactly what state do they track.
- TSState
Dependency - Dependency for tree-structural pseudo-classes.
- TSState
ForInvalidation - Tree-structural pseudoclasses that we care about for (Relative selector) invalidation. Specifically, we need to store information on ones that don’t generate the inner selector. Given the nature of these selectors:
Enums§
- Dependency
Invalidation Kind - Invalidation kind merging normal and relative dependencies.
- Generated
Invalidation - The type of invalidation a non-relative selector can generate.
- Normal
Dependency Invalidation Kind - The kind of elements down the tree this dependency may affect.
- Relative
Dependency Invalidation Kind - The kind of elements up the tree this relative selector dependency may affect. Because this travels upwards, it’s not viable for parallel subtree traversal, and is handled separately.
- Scope
Dependency Invalidation Kind - The kind of invalidation the subject of this dependency triggers.
Functions§
- note_
selector_ for_ invalidation - Adds a selector to the given
InvalidationMap. Returns Err(..) to signify OOM.
Type Aliases§
- AnyDependency
Map - Dependency mapping for * selectors.
- Custom
State Dependency Map - Dependency mapping for customstates
- IdOr
Class Dependency Map - Dependency mapping for classes or IDs.
- Local
Name Dependency Map - Dependency mapping for local names.
- State
Dependency Map - Dependency mapping for non-tree-strctural pseudo-class states.
- TSState
Dependency Map - Dependency mapping for tree-structural pseudo-class states.