pub struct CachedHashKey;Expand description
Hashing strategy that delegates to CacheHashable::get_cached_hash,
allowing types with internally cached hashes to avoid rehashing entire subtrees.
Trait Implementations§
Source§impl<T: CacheHashable> CacheKey<T> for CachedHashKey
impl<T: CacheHashable> CacheKey<T> for CachedHashKey
Source§fn invalidate(node: &T)
fn invalidate(node: &T)
Invalidate any internally cached hash for the given node.
The default is a no-op (used by
StdHashKey).Source§fn invalidate_subtree(node: &T)
fn invalidate_subtree(node: &T)
Invalidate cached hashes for the given node and all its descendants.
The default is a no-op (used by
StdHashKey).Auto Trait Implementations§
impl Freeze for CachedHashKey
impl RefUnwindSafe for CachedHashKey
impl Send for CachedHashKey
impl Sync for CachedHashKey
impl Unpin for CachedHashKey
impl UnsafeUnpin for CachedHashKey
impl UnwindSafe for CachedHashKey
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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 more§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 0 bytes