[−][src]Struct rollsum::bup::Bup
Rolling checksum method used by bup
Strongly based on https://github.com/bup/bup/blob/706e8d273/lib/bup/bupsplit.c https://github.com/bup/bup/blob/706e8d273/lib/bup/bupsplit.h (a bit like https://godoc.org/camlistore.org/pkg/rollsum)
Implementations
impl Bup
[src]
pub fn new() -> Self
[src]
Create new Bup engine with default chunking settings
pub fn new_with_chunk_bits(chunk_bits: u32) -> Self
[src]
Create new Bup engine with custom chunking settings
chunk_bits
is number of bits that need to match in
the edge condition. CHUNK_BITS
constant is the default.
pub fn find_chunk_edge(&mut self, buf: &[u8]) -> Option<(usize, u32)>
[src]
Find chunk edge using Bup defaults.
See Engine::find_chunk_edge_cond
.
pub fn count_bits(&self, digest: Self::Digest) -> u32
[src]
Counts the number of low bits set in the rollsum, assuming
the digest has the bottom CHUNK_BITS
bits set to 1
(i.e. assuming a digest at a default bup chunk edge, as
returned by find_chunk_edge
).
Be aware that there's a deliberate 'bug' in this function
in order to match expected return values from other bupsplit
implementations.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Bup
impl Send for Bup
impl Sync for Bup
impl Unpin for Bup
impl UnwindSafe for Bup
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,