Struct deflate::write::ZlibEncoder [−][src]
pub struct ZlibEncoder<W: Write> { /* fields omitted */ }
A Zlib encoder/compressor.
A struct implementing a Write
interface that takes arbitrary data and compresses it to
the provided writer using DEFLATE compression with Zlib headers and trailers.
Examples
use std::io::Write; use deflate::Compression; use deflate::write::ZlibEncoder; let data = b"This is some test data"; let mut encoder = ZlibEncoder::new(Vec::new(), Compression::Default); encoder.write_all(data)?; let compressed_data = encoder.finish()?;
Implementations
impl<W: Write> ZlibEncoder<W>
[src]
impl<W: Write> ZlibEncoder<W>
[src]pub fn new<O: Into<CompressionOptions>>(writer: W, options: O) -> ZlibEncoder<W>ⓘNotable traits for ZlibEncoder<W>
impl<W: Write> Write for ZlibEncoder<W>
[src]
Notable traits for ZlibEncoder<W>
impl<W: Write> Write for ZlibEncoder<W>
Create a new ZlibEncoder
using the provided compression options.
pub fn finish(self) -> Result<W>
[src]
Encode all pending data to the contained writer, consume this ZlibEncoder
,
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.
pub fn checksum(&self) -> u32
[src]
Return the adler32 checksum of the currently consumed data.
Trait Implementations
impl<W: Write> Drop for ZlibEncoder<W>
[src]
impl<W: Write> Drop for ZlibEncoder<W>
[src]impl<W: Write> Write for ZlibEncoder<W>
[src]
impl<W: Write> Write for ZlibEncoder<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.
pub fn write_vectored(&mut self, bufs: &[IoSlice<'_>]) -> Result<usize, Error>
1.36.0[src]
pub fn is_write_vectored(&self) -> bool
[src]
pub fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>
1.0.0[src]
pub fn write_all_vectored(
&mut self,
bufs: &mut [IoSlice<'_>]
) -> Result<(), Error>
[src]
&mut self,
bufs: &mut [IoSlice<'_>]
) -> Result<(), Error>
pub fn write_fmt(&mut self, fmt: Arguments<'_>) -> Result<(), Error>
1.0.0[src]
pub fn by_ref(&mut self) -> &mut Self
1.0.0[src]
Auto Trait Implementations
impl<W> RefUnwindSafe for ZlibEncoder<W> where
W: RefUnwindSafe,
W: RefUnwindSafe,
impl<W> Send for ZlibEncoder<W> where
W: Send,
W: Send,
impl<W> Sync for ZlibEncoder<W> where
W: Sync,
W: Sync,
impl<W> Unpin for ZlibEncoder<W> where
W: Unpin,
W: Unpin,
impl<W> UnwindSafe for ZlibEncoder<W> where
W: UnwindSafe,
W: UnwindSafe,
Blanket Implementations
impl<W> WriteBytesExt for W where
W: Write + ?Sized,
[src]
impl<W> WriteBytesExt for W where
W: Write + ?Sized,
[src]pub fn write_u8(&mut self, n: u8) -> Result<(), Error>
[src]
pub fn write_i8(&mut self, n: i8) -> Result<(), Error>
[src]
pub fn write_u16<T>(&mut self, n: u16) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
pub fn write_i16<T>(&mut self, n: i16) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
pub fn write_u24<T>(&mut self, n: u32) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
pub fn write_i24<T>(&mut self, n: i32) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
pub fn write_u32<T>(&mut self, n: u32) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
pub fn write_i32<T>(&mut self, n: i32) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
pub fn write_u48<T>(&mut self, n: u64) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
pub fn write_i48<T>(&mut self, n: i64) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
pub fn write_u64<T>(&mut self, n: u64) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
pub fn write_i64<T>(&mut self, n: i64) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
pub fn write_u128<T>(&mut self, n: u128) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
pub fn write_i128<T>(&mut self, n: i128) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
pub fn write_uint<T>(&mut self, n: u64, nbytes: usize) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
pub fn write_int<T>(&mut self, n: i64, nbytes: usize) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
pub fn write_uint128<T>(&mut self, n: u128, nbytes: usize) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
pub fn write_int128<T>(&mut self, n: i128, nbytes: usize) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
pub fn write_f32<T>(&mut self, n: f32) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,
pub fn write_f64<T>(&mut self, n: f64) -> Result<(), Error> where
T: ByteOrder,
[src]
T: ByteOrder,