flate2

Enum FlushCompress

Source
#[non_exhaustive]
pub enum FlushCompress { None = 0, Sync = 2, Partial = 1, Full = 3, Finish = 4, }
Expand description

Values which indicate the form of flushing to be used when compressing in-memory data.

Variants (Non-exhaustive)§

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
§

None = 0

A typical parameter for passing to compression/decompression functions, this indicates that the underlying stream to decide how much data to accumulate before producing output in order to maximize compression.

§

Sync = 2

All pending output is flushed to the output buffer and the output is aligned on a byte boundary so that the decompressor can get all input data available so far.

Flushing may degrade compression for some compression algorithms and so it should only be used when necessary. This will complete the current deflate block and follow it with an empty stored block.

§

Partial = 1

All pending output is flushed to the output buffer, but the output is not aligned to a byte boundary.

All of the input data so far will be available to the decompressor (as with Flush::Sync. This completes the current deflate block and follows it with an empty fixed codes block that is 10 bites long, and it assures that enough bytes are output in order for the decompressor to finish the block before the empty fixed code block.

§

Full = 3

All output is flushed as with Flush::Sync and the compression state is reset so decompression can restart from this point if previous compressed data has been damaged or if random access is desired.

Using this option too often can seriously degrade compression.

§

Finish = 4

Pending input is processed and pending output is flushed.

The return value may indicate that the stream is not yet done and more data has yet to be processed.

Trait Implementations§

Source§

impl Clone for FlushCompress

Source§

fn clone(&self) -> FlushCompress

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for FlushCompress

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for FlushCompress

Source§

fn eq(&self, other: &FlushCompress) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for FlushCompress

Source§

impl Eq for FlushCompress

Source§

impl StructuralPartialEq for FlushCompress

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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.