fastcdc::v2016

Enum Normalization

Source
pub enum Normalization {
    Level0,
    Level1,
    Level2,
    Level3,
}
Expand description

The level for the normalized chunking used by FastCDC and StreamCDC.

Normalized chunking “generates chunks whose sizes are normalized to a specified region centered at the expected chunk size,” as described in section 4.4 of the FastCDC 2016 paper.

Note that lower levels of normalization will result in a larger range of generated chunk sizes. It may be beneficial to widen the minimum/maximum chunk size values given to the FastCDC constructor in that case.

Note that higher levels of normalization may result in the final chunk of data being smaller than the minimum chunk size, which results in a hash value of zero (0) since no calculations are performed for sub-minimum chunks.

Variants§

§

Level0

No chunk size normalization, produces a wide range of chunk sizes.

§

Level1

Level 1 normalization, in which fewer chunks are outside of the desired range.

§

Level2

Level 2 normalization, where most chunks are of the desired size.

§

Level3

Level 3 normalization, nearly all chunks are the desired size.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.