[−][src]Struct siphasher::sip::SipHasher
An implementation of SipHash 2-4.
See: https://131002.net/siphash/
SipHash is a general-purpose hashing function: it runs at a good
speed (competitive with Spooky and City) and permits strong keyed
hashing. This lets you key your hashtables from a strong RNG, such as
rand::os::OsRng
.
Although the SipHash algorithm is considered to be generally strong, it is not intended for cryptographic purposes. As such, all cryptographic uses of this implementation are strongly discouraged.
Methods
impl SipHasher
[src]
pub fn new() -> SipHasher
[src]
Creates a new SipHasher
with the two initial keys set to 0.
pub fn new_with_keys(key0: u64, key1: u64) -> SipHasher
[src]
Creates a SipHasher
that is keyed off the provided keys.
pub fn keys(&self) -> (u64, u64)
[src]
Get the keys used by this hasher
Trait Implementations
impl Debug for SipHasher
[src]
impl Hasher for SipHasher
[src]
fn write(&mut self, msg: &[u8])
[src]
fn finish(&self) -> u64
[src]
fn write_u8(&mut self, i: u8)
1.3.0[src]
fn write_u16(&mut self, i: u16)
1.3.0[src]
fn write_u32(&mut self, i: u32)
1.3.0[src]
fn write_u64(&mut self, i: u64)
1.3.0[src]
fn write_u128(&mut self, i: u128)
1.26.0[src]
fn write_usize(&mut self, i: usize)
1.3.0[src]
fn write_i8(&mut self, i: i8)
1.3.0[src]
fn write_i16(&mut self, i: i16)
1.3.0[src]
fn write_i32(&mut self, i: i32)
1.3.0[src]
fn write_i64(&mut self, i: i64)
1.3.0[src]
fn write_i128(&mut self, i: i128)
1.26.0[src]
fn write_isize(&mut self, i: isize)
1.3.0[src]
impl Copy for SipHasher
[src]
impl Clone for SipHasher
[src]
fn clone(&self) -> SipHasher
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Default for SipHasher
[src]
Auto Trait Implementations
Blanket Implementations
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From<T> for T
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,