CacheKey

Trait CacheKey 

Source
pub trait CacheKey {
    // Required method
    fn cache_key(&self, state: &mut CacheKeyHasher);

    // Provided method
    fn cache_key_slice(data: &[Self], state: &mut CacheKeyHasher)
       where Self: Sized { ... }
}
Expand description

A trait for types that can be hashed in a stable way across versions and platforms. Equivalent to Ruff’s CacheKey trait.

Required Methods§

Source

fn cache_key(&self, state: &mut CacheKeyHasher)

Provided Methods§

Source

fn cache_key_slice(data: &[Self], state: &mut CacheKeyHasher)
where Self: Sized,

Implementations on Foreign Types§

Source§

impl CacheKey for bool

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for char

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for i8

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for i16

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for i32

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for i64

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for i128

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for isize

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for str

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for u8

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for u16

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for u32

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for u64

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for u128

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for ()

Source§

fn cache_key(&self, _state: &mut CacheKeyHasher)

Source§

impl CacheKey for usize

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for String

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for Path

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for PathBuf

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for Url

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for NonZeroI8

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for NonZeroI16

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for NonZeroI32

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for NonZeroI64

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for NonZeroI128

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for NonZeroU8

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for NonZeroU16

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for NonZeroU32

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for NonZeroU64

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl CacheKey for NonZeroU128

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<K: CacheKey + Ord, V: CacheKey> CacheKey for BTreeMap<K, V>

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<T> CacheKey for (T,)
where T: ?Sized + CacheKey,

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<T> CacheKey for Vec<T>
where T: CacheKey,

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<T: CacheKey> CacheKey for Option<T>

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<T: CacheKey> CacheKey for [T]

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<T: CacheKey, B> CacheKey for (T, B)
where B: ?Sized + CacheKey,

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<T: CacheKey, B: CacheKey, C> CacheKey for (T, B, C)
where C: ?Sized + CacheKey,

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<T: CacheKey, B: CacheKey, C: CacheKey, D> CacheKey for (T, B, C, D)
where D: ?Sized + CacheKey,

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<T: CacheKey, B: CacheKey, C: CacheKey, D: CacheKey, E> CacheKey for (T, B, C, D, E)
where E: ?Sized + CacheKey,

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<T: CacheKey, B: CacheKey, C: CacheKey, D: CacheKey, E: CacheKey, F> CacheKey for (T, B, C, D, E, F)
where F: ?Sized + CacheKey,

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<T: CacheKey, B: CacheKey, C: CacheKey, D: CacheKey, E: CacheKey, F: CacheKey, G> CacheKey for (T, B, C, D, E, F, G)
where G: ?Sized + CacheKey,

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<T: CacheKey, B: CacheKey, C: CacheKey, D: CacheKey, E: CacheKey, F: CacheKey, G: CacheKey, H> CacheKey for (T, B, C, D, E, F, G, H)
where H: ?Sized + CacheKey,

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<T: CacheKey, B: CacheKey, C: CacheKey, D: CacheKey, E: CacheKey, F: CacheKey, G: CacheKey, H: CacheKey, I> CacheKey for (T, B, C, D, E, F, G, H, I)
where I: ?Sized + CacheKey,

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<T: CacheKey, B: CacheKey, C: CacheKey, D: CacheKey, E: CacheKey, F: CacheKey, G: CacheKey, H: CacheKey, I: CacheKey, J> CacheKey for (T, B, C, D, E, F, G, H, I, J)
where J: ?Sized + CacheKey,

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<T: CacheKey, B: CacheKey, C: CacheKey, D: CacheKey, E: CacheKey, F: CacheKey, G: CacheKey, H: CacheKey, I: CacheKey, J: CacheKey, K> CacheKey for (T, B, C, D, E, F, G, H, I, J, K)
where K: ?Sized + CacheKey,

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<T: CacheKey, B: CacheKey, C: CacheKey, D: CacheKey, E: CacheKey, F: CacheKey, G: CacheKey, H: CacheKey, I: CacheKey, J: CacheKey, K: CacheKey, L> CacheKey for (T, B, C, D, E, F, G, H, I, J, K, L)
where L: ?Sized + CacheKey,

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<T: ?Sized + CacheKey> CacheKey for &T

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<T: ?Sized + CacheKey> CacheKey for &mut T

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<V> CacheKey for Cow<'_, V>
where V: CacheKey + ToOwned + ?Sized,

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Source§

impl<V: CacheKey> CacheKey for BTreeSet<V>

Source§

fn cache_key(&self, state: &mut CacheKeyHasher)

Implementors§