Struct core::hash::SipHasher [] [src]

pub struct SipHasher {
    // some fields omitted
}
1.0.0

An implementation of SipHash 2-4.

See: https://131002.net/siphash/

This is currently the default hashing function used by standard library (eg. collections::HashMap uses it by default).

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

fn new() -> SipHasher

Creates a new SipHasher with the two initial keys set to 0.

fn new_with_keys(key0: u64, key1: u64) -> SipHasher

Creates a SipHasher that is keyed off the provided keys.

Trait Implementations

impl Hasher for SipHasher

fn write(&mut self, msg: &[u8])

fn finish(&self) -> u64

fn write_u8(&mut self, i: u8)1.3.0

fn write_u16(&mut self, i: u16)1.3.0

fn write_u32(&mut self, i: u32)1.3.0

fn write_u64(&mut self, i: u64)1.3.0

fn write_usize(&mut self, i: usize)1.3.0

fn write_i8(&mut self, i: i8)1.3.0

fn write_i16(&mut self, i: i16)1.3.0

fn write_i32(&mut self, i: i32)1.3.0

fn write_i64(&mut self, i: i64)1.3.0

fn write_isize(&mut self, i: isize)1.3.0

impl Clone for SipHasher

fn clone(&self) -> SipHasher

fn clone_from(&mut self, source: &Self)

impl Default for SipHasher

fn default() -> SipHasher

Derived Implementations

impl Debug for SipHasher

fn fmt(&self, __arg_0: &mut Formatter) -> Result