pub struct InterfaceIdHasher(/* private fields */);Expand description
Hasher for maps keyed by InterfaceId, looked up several times per
forwarded packet. IDs are small trusted integers, so a multiplicative mix
replaces SipHash, whose per-lookup cost showed up in forwarding profiles.
Trait Implementations§
Source§impl Clone for InterfaceIdHasher
impl Clone for InterfaceIdHasher
impl Copy for InterfaceIdHasher
Source§impl Default for InterfaceIdHasher
impl Default for InterfaceIdHasher
Source§impl Hasher for InterfaceIdHasher
impl Hasher for InterfaceIdHasher
1.26.0 · Source§fn write_u128(&mut self, i: u128)
fn write_u128(&mut self, i: u128)
Writes a single
u128 into this hasher.1.3.0 · Source§fn write_usize(&mut self, i: usize)
fn write_usize(&mut self, i: usize)
Writes a single
usize into this hasher.1.26.0 · Source§fn write_i128(&mut self, i: i128)
fn write_i128(&mut self, i: i128)
Writes a single
i128 into this hasher.1.3.0 · Source§fn write_isize(&mut self, i: isize)
fn write_isize(&mut self, i: isize)
Writes a single
isize into this hasher.Source§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 Forget for InterfaceIdHasher
impl Freeze for InterfaceIdHasher
impl RefUnwindSafe for InterfaceIdHasher
impl Send for InterfaceIdHasher
impl Sync for InterfaceIdHasher
impl Unpin for InterfaceIdHasher
impl UnsafeUnpin for InterfaceIdHasher
impl UnwindSafe for InterfaceIdHasher
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more