pub struct StreamFingerprint {
pub chunks: Vec<ChunkDigest>,
pub total_bytes: u64,
}Expand description
A file-level fingerprint derived from its content-defined chunk hashes.
The fingerprint is robust against small edits: only the chunks that actually changed will differ, so the Jaccard similarity between two near-identical files remains high.
Fields§
§chunks: Vec<ChunkDigest>Ordered list of chunk digests.
total_bytes: u64Total bytes processed.
Implementations§
Source§impl StreamFingerprint
impl StreamFingerprint
Sourcepub fn chunk_count(&self) -> usize
pub fn chunk_count(&self) -> usize
Number of chunks in the fingerprint.
Trait Implementations§
Source§impl Clone for StreamFingerprint
impl Clone for StreamFingerprint
Source§fn clone(&self) -> StreamFingerprint
fn clone(&self) -> StreamFingerprint
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for StreamFingerprint
impl RefUnwindSafe for StreamFingerprint
impl Send for StreamFingerprint
impl Sync for StreamFingerprint
impl Unpin for StreamFingerprint
impl UnsafeUnpin for StreamFingerprint
impl UnwindSafe for StreamFingerprint
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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