Struct FoldHasher

pub struct FoldHasher<'a> { /* private fields */ }

A Hasher instance implementing foldhash, optimized for quality.

While you can create one directly with FoldHasher::with_seed, you most likely want to use RandomState, SeedableRandomState or FixedState to create FoldHashers.

Implementations

impl<'a> FoldHasher<'a>

const fn with_seed(per_hasher_seed: u64, shared_seed: &'a SharedSeed) -> FoldHasher<'a>

Initializes this FoldHasher with the given per-hasher seed and SharedSeed.

Trait Implementations

impl<'a> Clone for FoldHasher<'a>

fn clone(&self) -> FoldHasher<'a>

impl<'a> Hasher for FoldHasher<'a>

fn write(&mut self, bytes: &[u8])
fn write_u8(&mut self, i: u8)
fn write_u16(&mut self, i: u16)
fn write_u32(&mut self, i: u32)
fn write_u64(&mut self, i: u64)
fn write_u128(&mut self, i: u128)
fn write_usize(&mut self, i: usize)
fn finish(&self) -> u64

Auto Trait Implementations

impl<'a> Freeze for FoldHasher<'a>

impl<'a> RefUnwindSafe for FoldHasher<'a>

impl<'a> Send for FoldHasher<'a>

impl<'a> Sync for FoldHasher<'a>

impl<'a> Unpin for FoldHasher<'a>

impl<'a> UnsafeUnpin for FoldHasher<'a>

impl<'a> UnwindSafe for FoldHasher<'a>

Blanket Implementations

impl<T> Any for FoldHasher<'a> where T: 'static + ?Sized,

fn type_id(&self) -> TypeId

impl<T> Borrow<T> for FoldHasher<'a> where T: ?Sized,

fn borrow(&self) -> &T

impl<T> BorrowMut<T> for FoldHasher<'a> where T: ?Sized,

fn borrow_mut(&mut self) -> &mut T

impl<T> CloneToUninit for FoldHasher<'a> where T: Clone,

unsafe fn clone_to_uninit(&self, dest: *mut u8)

impl<T> From<T> for FoldHasher<'a>

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> ToOwned for FoldHasher<'a> where T: Clone,

type Owned = T;
fn to_owned(&self) -> T
fn clone_into(&self, target: &mut T)

impl<T, U> Into<U> for FoldHasher<'a> where U: From<T>,

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

impl<T, U> TryFrom<U> for FoldHasher<'a> where U: Into<T>,

type Error = never;
fn try_from(value: U) -> Result<T, never>

impl<T, U> TryInto<U> for FoldHasher<'a> where U: TryFrom<T>,

type Error = <U as TryFrom<T>>::Error;
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>