Struct deflate::write::ZlibEncoder [] [src]

pub struct ZlibEncoder<W: Write> { /* fields omitted */ }

A Zlib encoder/compressor.

A struct implementing a Write interface that takes unencoded 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).unwrap();
let compressed_data = encoder.finish().unwrap();

Methods

impl<W: Write> ZlibEncoder<W>
[src]

Create a new ZlibEncoder using the provided compression options.

Encode all pending data to the contained writer, consume this ZlibEncoder, and return the contained writer if writing succeeds.

Resets the encoder (except the compression options), replacing the current writer with a new one, returning the old one.

Return the adler32 checksum of the currently consumed data.

Trait Implementations

impl<W: Write> Write for ZlibEncoder<W>
[src]

Write a buffer into this object, returning how many bytes were written. Read more

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.

Attempts to write an entire buffer into this write. Read more

Writes a formatted string into this writer, returning any error encountered. Read more

Creates a "by reference" adaptor for this instance of Write. Read more

impl<W: Write> Drop for ZlibEncoder<W>
[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.