A rolling version of the Adler32 hash, which can 'forget' past bytes.
Calling remove() will update the hash to the value it would have if that past byte had never been fed to the algorithm. This allows you to get the hash of a rolling window very efficiently.
pub fn new() -> RollingAdler32[src]
Creates an empty Adler32 context (with hash 1).
pub fn from_value(adler32: u32) -> RollingAdler32[src]
Creates an Adler32 context with the given initial value.
pub fn from_buffer(buffer: &[u8]) -> RollingAdler32[src]
Convenience function initializing a context from the hash of a buffer.
Returns the current hash.
Removes the given
byte that was fed to the algorithm
size bytes ago.
Feeds a new
byte to the algorithm to update the hash.
pub fn update_buffer(&mut self, buffer: &[u8])[src]
Feeds a vector of bytes to the algorithm to update the hash.
Auto Trait Implementations
impl RefUnwindSafe for RollingAdler32
impl Send for RollingAdler32
impl Sync for RollingAdler32
impl Unpin for RollingAdler32
impl UnwindSafe for RollingAdler32
type Error = Infallible
The type returned in the event of a conversion error.