Struct deflate::write::DeflateEncoder [] [src]

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

A DEFLATE encoder/compressor.

A struct implementing a Write interface that takes unencoded data and compresses it to the provided writer using DEFLATE compression.

Examples

use std::io::Write;

use deflate::Compression;
use deflate::write::DeflateEncoder;

let data = b"This is some test data";
let mut encoder = DeflateEncoder::new(Vec::new(), Compression::Default);
encoder.write_all(data)?;
let compressed_data = encoder.finish()?;

Methods

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

Creates a new encoder using the provided compression options.

Encode all pending data to the contained writer, consume this DeflateEncoder, 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.

Trait Implementations

impl<W: Write> Write for DeflateEncoder<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 DeflateEncoder<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.