Struct SipHasher
pub struct SipHasher(/* private fields */);๐Deprecated since 1.13.0: use
std::hash::DefaultHasher insteadAvailable on crate features
crypto and std only.Expand description
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 hash tables 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.
Implementationsยง
ยงimpl SipHasher
impl SipHasher
1.0.0pub fn new() -> SipHasher
๐Deprecated since 1.13.0: use std::hash::DefaultHasher insteadAvailable on (crate features rustls or boring or acme) and crate feature rustls only.
pub fn new() -> SipHasher
std::hash::DefaultHasher insteadrustls or boring or acme) and crate feature rustls only.Creates a new SipHasher with the two initial keys set to 0.
1.0.0pub fn new_with_keys(key0: u64, key1: u64) -> SipHasher
๐Deprecated since 1.13.0: use std::hash::DefaultHasher insteadAvailable on (crate features rustls or boring or acme) and crate feature rustls only.
pub fn new_with_keys(key0: u64, key1: u64) -> SipHasher
std::hash::DefaultHasher insteadrustls or boring or acme) and crate feature rustls only.Creates a SipHasher that is keyed off the provided keys.
Trait Implementationsยง
1.0.0ยงimpl Hasher for SipHasher
impl Hasher for SipHasher
ยงfn write_str(&mut self, s: &str)
fn write_str(&mut self, s: &str)
๐ฌThis is a nightly-only experimental API. (
hasher_prefixfree_extras)Writes a single
str into this hasher. Read more1.26.0ยงfn write_u128(&mut self, i: u128)
fn write_u128(&mut self, i: u128)
Writes a single
u128 into this hasher.1.3.0ยงfn write_usize(&mut self, i: usize)
fn write_usize(&mut self, i: usize)
Writes a single
usize into this hasher.1.26.0ยงfn write_i128(&mut self, i: i128)
fn write_i128(&mut self, i: i128)
Writes a single
i128 into this hasher.1.3.0ยงfn write_isize(&mut self, i: isize)
fn write_isize(&mut self, i: isize)
Writes a single
isize into this hasher.ยงfn write_length_prefix(&mut self, len: usize)
fn write_length_prefix(&mut self, len: usize)
๐ฌThis is a nightly-only experimental API. (
hasher_prefixfree_extras)Writes a length prefix into this hasher, as part of being prefix-free. Read more
Auto Trait Implementationsยง
impl Freeze for SipHasher
impl RefUnwindSafe for SipHasher
impl Send for SipHasher
impl Sync for SipHasher
impl Unpin for SipHasher
impl UnwindSafe for SipHasher
Blanket Implementationsยง
ยงimpl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
ยงimpl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
ยงimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
ยงfn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
ยงimpl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
ยงunsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
๐ฌThis is a nightly-only experimental API. (
clone_to_uninit)ยงimpl<T> FutureExt for T
impl<T> FutureExt for T
ยงfn with_context(self, otel_cx: Context) -> WithContext<Self> โ
fn with_context(self, otel_cx: Context) -> WithContext<Self> โ
ยงfn with_current_context(self) -> WithContext<Self> โ
fn with_current_context(self) -> WithContext<Self> โ
ยงimpl<T> Instrument for T
impl<T> Instrument for T
ยงfn instrument(self, span: Span) -> Instrumented<Self> โ
fn instrument(self, span: Span) -> Instrumented<Self> โ
ยงfn in_current_span(self) -> Instrumented<Self> โ
fn in_current_span(self) -> Instrumented<Self> โ
Sourceยงimpl<T> IntoEither for T
impl<T> IntoEither for T
Sourceยงfn into_either(self, into_left: bool) -> Either<Self, Self> โ
fn into_either(self, into_left: bool) -> Either<Self, Self> โ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSourceยงfn into_either_with<F>(self, into_left: F) -> Either<Self, Self> โ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> โ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreยงimpl<T> Pointable for T
impl<T> Pointable for T
ยงimpl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
ยงfn and<P, B, E>(self, other: P) -> And<T, P>
fn and<P, B, E>(self, other: P) -> And<T, P>
Create a new
Policy that returns Action::Follow only if self and other return
Action::Follow. Read more