[−][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]
ⓘImportant traits for GzEncoder<W>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.
ⓘImportant traits for GzEncoder<W>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
impl<W: Write> Drop for GzEncoder<W>
[src]
fn drop(&mut self)
[src]
When the encoder is dropped, output the rest of the data.
WARNING: This may silently fail if writing fails, so using this to finish encoding
for writers where writing might fail is not recommended, for that call
finish()
instead.
impl<W: Write> Write for GzEncoder<W>
[src]
fn write(&mut self, buf: &[u8]) -> Result<usize>
[src]
fn flush(&mut self) -> Result<()>
[src]
Flush the encoder.
This will flush the encoder, emulating the Sync flush method from Zlib. This essentially finishes the current block, and sends an additional empty stored block to the writer.
fn write_vectored(&mut self, bufs: &[IoSlice]) -> Result<usize, Error>
1.36.0[src]
Like write
, except that it writes from a slice of buffers. Read more
fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>
1.0.0[src]
Attempts to write an entire buffer into this writer. Read more
fn write_fmt(&mut self, fmt: Arguments) -> Result<(), Error>
1.0.0[src]
Writes a formatted string into this writer, returning any error encountered. Read more
fn by_ref(&mut self) -> &mut Self
1.0.0[src]
Creates a "by reference" adaptor for this instance of Write
. Read more
Auto Trait Implementations
impl<W> Unpin for GzEncoder<W> where
W: Unpin,
W: Unpin,
impl<W> Sync for GzEncoder<W> where
W: Sync,
W: Sync,
impl<W> Send for GzEncoder<W> where
W: Send,
W: Send,
impl<W> UnwindSafe for GzEncoder<W> where
W: UnwindSafe,
W: UnwindSafe,
impl<W> RefUnwindSafe for GzEncoder<W> where
W: RefUnwindSafe,
W: RefUnwindSafe,
Blanket Implementations
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>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
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> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<W> WriteBytesExt for W where
W: Write + ?Sized,
[src]
W: Write + ?Sized,
fn write_u8(&mut self, n: u8) -> Result<(), Error>
[src]
Writes an unsigned 8 bit integer to the underlying writer. Read more
fn write_i8(&mut self, n: i8) -> Result<(), Error>
[src]
Writes a signed 8 bit integer to the underlying writer. Read more
fn write_u16<T>(&mut self, n: u16) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
Writes an unsigned 16 bit integer to the underlying writer. Read more
fn write_i16<T>(&mut self, n: i16) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
Writes a signed 16 bit integer to the underlying writer. Read more
fn write_u24<T>(&mut self, n: u32) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
Writes an unsigned 24 bit integer to the underlying writer. Read more
fn write_i24<T>(&mut self, n: i32) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
Writes a signed 24 bit integer to the underlying writer. Read more
fn write_u32<T>(&mut self, n: u32) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
Writes an unsigned 32 bit integer to the underlying writer. Read more
fn write_i32<T>(&mut self, n: i32) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
Writes a signed 32 bit integer to the underlying writer. Read more
fn write_u48<T>(&mut self, n: u64) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
Writes an unsigned 48 bit integer to the underlying writer. Read more
fn write_i48<T>(&mut self, n: i64) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
Writes a signed 48 bit integer to the underlying writer. Read more
fn write_u64<T>(&mut self, n: u64) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
Writes an unsigned 64 bit integer to the underlying writer. Read more
fn write_i64<T>(&mut self, n: i64) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
Writes a signed 64 bit integer to the underlying writer. Read more
fn write_u128<T>(&mut self, n: u128) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
Writes an unsigned 128 bit integer to the underlying writer.
fn write_i128<T>(&mut self, n: i128) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
Writes a signed 128 bit integer to the underlying writer.
fn write_uint<T>(&mut self, n: u64, nbytes: usize) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
Writes an unsigned n-bytes integer to the underlying writer. Read more
fn write_int<T>(&mut self, n: i64, nbytes: usize) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
Writes a signed n-bytes integer to the underlying writer. Read more
fn write_uint128<T>(&mut self, n: u128, nbytes: usize) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
Writes an unsigned n-bytes integer to the underlying writer. Read more
fn write_int128<T>(&mut self, n: i128, nbytes: usize) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
Writes a signed n-bytes integer to the underlying writer. Read more
fn write_f32<T>(&mut self, n: f32) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
Writes a IEEE754 single-precision (4 bytes) floating point number to the underlying writer. Read more
fn write_f64<T>(&mut self, n: f64) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
Writes a IEEE754 double-precision (8 bytes) floating point number to the underlying writer. Read more