Struct lz4_flex::frame::FrameDecoder [−][src]
pub struct FrameDecoder<R: Read> { /* fields omitted */ }
Expand description
A reader for decompressing the LZ4 frame format
This Decoder wraps any other reader that implements io::Read
.
Bytes read will be decompressed according to the LZ4 frame format.
Example 1
Deserializing json values out of a compressed file.
let compressed_input = std::fs::File::open("datafile").unwrap();
let mut decompressed_input = lz4_flex::frame::FrameDecoder::new(compressed_input);
let json: serde_json::Value = serde_json::from_reader(decompressed_input).unwrap();
Example
Deserializing multiple json values out of a compressed file
let compressed_input = std::fs::File::open("datafile").unwrap();
let mut decompressed_input = lz4_flex::frame::FrameDecoder::new(compressed_input);
loop {
match serde_json::from_reader::<_, serde_json::Value>(&mut decompressed_input) {
Ok(json) => { println!("json {:?}", json); }
Err(e) if e.is_eof() => break,
Err(e) => panic!("{}", e),
}
}
Implementations
pub fn new(rdr: R) -> FrameDecoder<R>ⓘNotable traits for FrameDecoder<R>impl<R: Read> Read for FrameDecoder<R>
pub fn new(rdr: R) -> FrameDecoder<R>ⓘNotable traits for FrameDecoder<R>impl<R: Read> Read for FrameDecoder<R>
impl<R: Read> Read for FrameDecoder<R>
Creates a new Decoder for the specified reader.
Trait Implementations
Returns the contents of the internal buffer, filling it with more data from the inner reader if it is empty. Read more
Tells this buffer that amt
bytes have been consumed from the buffer,
so they should no longer be returned in calls to read
. Read more
🔬 This is a nightly-only experimental API. (buf_read_has_data_left
)
recently added
Check if the underlying Read
has any data left to be read. Read more
Read all bytes into buf
until the delimiter byte
or EOF is reached. Read more
Read all bytes until a newline (the 0xA
byte) is reached, and append
them to the provided buffer. Read more
Returns an iterator over the contents of this reader split on the byte
byte
. Read more
Pull some bytes from this source into the specified buffer, returning how many bytes were read. Read more
Read all bytes until EOF in this source, appending them to buf
. Read more
Read all bytes until EOF in this source, placing them into buf
. Read more
Like read
, except that it reads into a slice of buffers. Read more
can_vector
)Determines if this Read
er has an efficient read_vectored
implementation. Read more
read_initializer
)Determines if this Read
er can work with buffers of uninitialized
memory. Read more
Read the exact number of bytes required to fill buf
. Read more
Creates a “by reference” adapter for this instance of Read
. Read more
Creates an adapter which will chain this stream with another. Read more