hash32

Trait Hash

Source
pub trait Hash {
    // Required method
    fn hash<H>(&self, state: &mut H)
       where H: Hasher;

    // Provided method
    fn hash_slice<H>(data: &[Self], state: &mut H)
       where H: Hasher,
             Self: Sized { ... }
}
Expand description

See core::hash::Hash for details

Required Methods§

Source

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Feeds this value into the given Hasher.

Provided Methods§

Source

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl Hash for bool

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl Hash for char

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl Hash for i8

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher,

Source§

impl Hash for i16

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher,

Source§

impl Hash for i32

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher,

Source§

impl Hash for i64

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher,

Source§

impl Hash for isize

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher,

Source§

impl Hash for str

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl Hash for u8

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher,

Source§

impl Hash for u16

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher,

Source§

impl Hash for u32

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher,

Source§

impl Hash for u64

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher,

Source§

impl Hash for ()

Source§

fn hash<H: Hasher>(&self, _state: &mut H)

Source§

impl Hash for usize

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher,

Source§

impl<'a, T: ?Sized + Hash> Hash for &'a T

Source§

fn hash<H: Hasher>(&self, state: &mut H)

Source§

impl<'a, T: ?Sized + Hash> Hash for &'a mut T

Source§

fn hash<H: Hasher>(&self, state: &mut H)

Source§

impl<A> Hash for (A,)
where A: ?Sized + Hash,

Source§

fn hash<S: Hasher>(&self, state: &mut S)

Source§

impl<A: Hash, B> Hash for (A, B)
where B: ?Sized + Hash,

Source§

fn hash<S: Hasher>(&self, state: &mut S)

Source§

impl<A: Hash, B: Hash, C> Hash for (A, B, C)
where C: ?Sized + Hash,

Source§

fn hash<S: Hasher>(&self, state: &mut S)

Source§

impl<A: Hash, B: Hash, C: Hash, D> Hash for (A, B, C, D)
where D: ?Sized + Hash,

Source§

fn hash<S: Hasher>(&self, state: &mut S)

Source§

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

Source§

fn hash<S: Hasher>(&self, state: &mut S)

Source§

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

Source§

fn hash<S: Hasher>(&self, state: &mut S)

Source§

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

Source§

fn hash<S: Hasher>(&self, state: &mut S)

Source§

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

Source§

fn hash<S: Hasher>(&self, state: &mut S)

Source§

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

Source§

fn hash<S: Hasher>(&self, state: &mut S)

Source§

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

Source§

fn hash<S: Hasher>(&self, state: &mut S)

Source§

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

Source§

fn hash<S: Hasher>(&self, state: &mut S)

Source§

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

Source§

fn hash<S: Hasher>(&self, state: &mut S)

Source§

impl<T> Hash for [T; 0]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 1]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 2]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 3]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 4]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 5]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 6]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 7]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 8]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 9]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 10]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 11]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 12]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 13]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 14]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 15]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 16]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 17]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 18]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 19]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 20]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 21]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 22]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 23]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 24]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 25]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 26]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 27]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 28]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 29]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 30]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 31]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T; 32]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Source§

impl<T> Hash for [T]
where T: Hash,

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Implementors§