pub struct Hasher { /* private fields */ }
Expand description
Represents an in-progress CRC32 computation.
Implementations§
Source§impl Hasher
impl Hasher
Sourcepub fn new() -> Self
pub fn new() -> Self
Create a new Hasher
.
This will perform a CPU feature detection at runtime to select the most optimal implementation for the current processor architecture.
Sourcepub fn new_with_initial(init: u32) -> Self
pub fn new_with_initial(init: u32) -> Self
Create a new Hasher
with an initial CRC32 state.
This works just like Hasher::new
, except that it allows for an initial
CRC32 state to be passed in.
Sourcepub fn new_with_initial_len(init: u32, amount: u64) -> Self
pub fn new_with_initial_len(init: u32, amount: u64) -> Self
Create a new Hasher
with an initial CRC32 state.
As new_with_initial
, but also accepts a length (in bytes). The
resulting object can then be used with combine
to compute crc(a || b)
from crc(a)
, crc(b)
, and len(b)
.
Trait Implementations§
Source§impl Hasher for Hasher
impl Hasher for Hasher
1.26.0 · Source§fn write_u128(&mut self, i: u128)
fn write_u128(&mut self, i: u128)
u128
into this hasher.1.3.0 · Source§fn write_usize(&mut self, i: usize)
fn write_usize(&mut self, i: usize)
usize
into this hasher.1.26.0 · Source§fn write_i128(&mut self, i: i128)
fn write_i128(&mut self, i: i128)
i128
into this hasher.1.3.0 · Source§fn write_isize(&mut self, i: isize)
fn write_isize(&mut self, i: isize)
isize
into this hasher.Source§fn write_length_prefix(&mut self, len: usize)
fn write_length_prefix(&mut self, len: usize)
hasher_prefixfree_extras
)Auto Trait Implementations§
impl Freeze for Hasher
impl RefUnwindSafe for Hasher
impl Send for Hasher
impl Sync for Hasher
impl Unpin for Hasher
impl UnwindSafe for Hasher
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 16 bytes