pub struct RelativeSelectorInvalidationMap {
pub map: InvalidationMap,
pub ts_state_to_selector: TSStateDependencyMap,
pub type_to_selector: LocalNameDependencyMap,
pub any_to_selector: AnyDependencyMap,
pub used: bool,
pub needs_ancestors_traversal: bool,
}
Expand description
A map to store all relative selector invalidations. This keeps a lot more data than the usual map, because any change can generate upward traversals that need to be handled separately.
Fields§
§map: InvalidationMap
Portion common to the normal invalidation map, except that this is for relative selectors and their inner selectors.
ts_state_to_selector: TSStateDependencyMap
A map for a given tree-structural pseudo-class to all the relative selector dependencies with that type.
type_to_selector: LocalNameDependencyMap
A map from a given type name to all the relative selector dependencies with that type.
any_to_selector: AnyDependencyMap
All relative selector dependencies that specify *
.
used: bool
Flag indicating if any relative selector is used.
needs_ancestors_traversal: bool
Flag indicating if invalidating a relative selector requires ancestor traversal.
Implementations§
source§impl RelativeSelectorInvalidationMap
impl RelativeSelectorInvalidationMap
sourcepub fn shrink_if_needed(&mut self)
pub fn shrink_if_needed(&mut self)
Shrink the capacity of hash maps if needed.
Trait Implementations§
source§impl Clone for RelativeSelectorInvalidationMap
impl Clone for RelativeSelectorInvalidationMap
source§fn clone(&self) -> RelativeSelectorInvalidationMap
fn clone(&self) -> RelativeSelectorInvalidationMap
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl MallocSizeOf for RelativeSelectorInvalidationMap
impl MallocSizeOf for RelativeSelectorInvalidationMap
source§fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
Measure the heap usage of all descendant heap-allocated structures, but
not the space taken up by the value itself.
Auto Trait Implementations§
impl Freeze for RelativeSelectorInvalidationMap
impl RefUnwindSafe for RelativeSelectorInvalidationMap
impl Send for RelativeSelectorInvalidationMap
impl Sync for RelativeSelectorInvalidationMap
impl Unpin for RelativeSelectorInvalidationMap
impl UnwindSafe for RelativeSelectorInvalidationMap
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<T> MaybeBoxed<Box<T>> for T
impl<T> MaybeBoxed<Box<T>> for T
source§fn maybe_boxed(self) -> Box<T>
fn maybe_boxed(self) -> Box<T>
Convert
source§impl<T> MaybeBoxed<T> for T
impl<T> MaybeBoxed<T> for T
source§fn maybe_boxed(self) -> T
fn maybe_boxed(self) -> T
Convert