[−][src]Struct deflate::write::GzEncoder
A Gzip encoder/compressor.
A struct implementing a Write
interface that takes unencoded data and compresses it to
the provided writer using DEFLATE compression with Gzip headers and trailers.
Examples
use std::io::Write; use deflate::Compression; use deflate::write::GzEncoder; let data = b"This is some test data"; let mut encoder = GzEncoder::new(Vec::new(), Compression::Default); encoder.write_all(data)?; let compressed_data = encoder.finish()?;
Methods
impl<W: Write> GzEncoder<W>
[src][−]
pub fn new<O: Into<CompressionOptions>>(writer: W, options: O) -> GzEncoder<W>
[src][−]
Create a new GzEncoder
writing deflate-compressed data to the underlying writer when
written to, wrapped in a gzip header and trailer. The header details will be blank.
pub fn from_builder<O: Into<CompressionOptions>>(
builder: GzBuilder,
writer: W,
options: O
) -> GzEncoder<W>
[src][−]
builder: GzBuilder,
writer: W,
options: O
) -> GzEncoder<W>
Create a new GzEncoder from the provided GzBuilder
. This allows customising
the detalis of the header, such as the filename and comment fields.
pub fn finish(self) -> Result<W>
[src][−]
Encode all pending data to the contained writer, consume this GzEncoder
,
and return the contained writer if writing succeeds.
pub fn reset(&mut self, writer: W) -> Result<W>
[src][−]
Resets the encoder (except the compression options), replacing the current writer with a new one, returning the old one. (Using a blank header).
pub fn reset_with_builder(&mut self, writer: W, builder: GzBuilder) -> Result<W>
[src][−]
Resets the encoder (excelt the compression options), replacing the current writer
with a new one, returning the old one, and using the provided GzBuilder
to
create the header.
pub fn checksum(&self) -> u32
[src][−]
Get the crc32 checksum of the data comsumed so far.
Trait Implementations
Auto Trait Implementations
impl<W> RefUnwindSafe for GzEncoder<W> where
W: RefUnwindSafe,
W: RefUnwindSafe,
impl<W> Send for GzEncoder<W> where
W: Send,
W: Send,
impl<W> Sync for GzEncoder<W> where
W: Sync,
W: Sync,
impl<W> Unpin for GzEncoder<W> where
W: Unpin,
W: Unpin,
impl<W> UnwindSafe for GzEncoder<W> where
W: UnwindSafe,
W: UnwindSafe,
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,
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>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,
impl<W> WriteBytesExt for W where
W: Write + ?Sized,
[src][+]
W: Write + ?Sized,