Struct libflate::lz77::DefaultLz77Encoder
[−]
[src]
pub struct DefaultLz77Encoder { /* fields omitted */ }
A Lz77Encode
implementation used by default.
Methods
impl DefaultLz77Encoder
[src]
fn new() -> Self
Makes a new encoder instance.
Examples
use libflate::deflate; use libflate::lz77::{self, Lz77Encode, DefaultLz77Encoder}; let lz77 = DefaultLz77Encoder::new(); assert_eq!(lz77.window_size(), lz77::MAX_WINDOW_SIZE); let options = deflate::EncodeOptions::with_lz77(lz77); let _deflate = deflate::Encoder::with_options(Vec::new(), options);
fn with_window_size(size: u16) -> Self
Makes a new encoder instance with specified window size.
Larger window size is prefered to raise compression ratio, but it may require more working memory to encode and decode data.
Examples
use libflate::deflate; use libflate::lz77::{self, Lz77Encode, DefaultLz77Encoder}; let lz77 = DefaultLz77Encoder::with_window_size(1024); assert_eq!(lz77.window_size(), 1024); let options = deflate::EncodeOptions::with_lz77(lz77); let _deflate = deflate::Encoder::with_options(Vec::new(), options);
Trait Implementations
impl Debug for DefaultLz77Encoder
[src]
impl Lz77Encode for DefaultLz77Encoder
[src]
fn encode<S>(&mut self, buf: &[u8], sink: S) where S: Sink
Encodes a buffer and writes result LZ77 codes to sink
.
fn flush<S>(&mut self, sink: S) where S: Sink
Flushes the encoder, ensuring that all intermediately buffered codes are consumed by sink
.
fn window_size(&self) -> u16
Returns the window size of the encoder. Read more
fn compression_level(&self) -> CompressionLevel
Returns the compression level of the encoder. Read more