Trait libflate_lz77::Lz77Encode[][src]

pub trait Lz77Encode {
    fn encode<S>(&mut self, buf: &[u8], sink: S)
    where
        S: Sink
;
fn flush<S>(&mut self, sink: S)
    where
        S: Sink
; fn compression_level(&self) -> CompressionLevel { ... }
fn window_size(&self) -> u16 { ... } }
[]

The LZ77Encode trait defines the interface of LZ77 encoding algorithm.

Required methods

fn encode<S>(&mut self, buf: &[u8], sink: S) where
    S: Sink
[src][]

Encodes a buffer and writes result LZ77 codes to sink.

fn flush<S>(&mut self, sink: S) where
    S: Sink
[src][]

Flushes the encoder, ensuring that all intermediately buffered codes are consumed by sink.

Provided methods

fn compression_level(&self) -> CompressionLevel[src][]

Returns the compression level of the encoder.

If the implementation is omitted, CompressionLevel::Balance will be returned.

fn window_size(&self) -> u16[src][]

Returns the window size of the encoder.

If the implementation is omitted, MAX_WINDOW_SIZE will be returned.

Implementors

impl Lz77Encode for DefaultLz77Encoder[src][+]

impl Lz77Encode for NoCompressionLz77Encoder[src][+]