pub struct Decompress { /* private fields */ }Expand description
In-memory state for decompressing brotli-encoded data.
This stream is at the heart of the I/O streams and is used to decompress an incoming brotli stream.
Implementations§
Source§impl Decompress
impl Decompress
Sourcepub fn new() -> Decompress
pub fn new() -> Decompress
Creates a new brotli decompression/decoding stream ready to receive data.
Sourcepub fn decompress(
&mut self,
input: &mut &[u8],
output: &mut &mut [u8],
) -> Result<DeStatus, Error>
pub fn decompress( &mut self, input: &mut &[u8], output: &mut &mut [u8], ) -> Result<DeStatus, Error>
Decompress some input data and write it to a buffer of output data.
This function will decompress the data in input and place the output
in output, returning the result. Possible statuses that can be
returned are that the stream is finished, more input is needed, or more
output space is needed.
The input slice is updated to point to the remaining data that was not
consumed, and the output slice is updated to point to the portion of
the output slice that still needs to be filled in.
§Errors
If the input stream is not a valid brotli stream, then an error is returned.
Sourcepub fn take_output(&mut self, size_limit: Option<usize>) -> Option<&[u8]>
pub fn take_output(&mut self, size_limit: Option<usize>) -> Option<&[u8]>
Retrieve a slice of the internal decompressor buffer up to size_limit in length
(unlimited length if None), consuming it. As the internal buffer may not be
contiguous, consecutive calls may return more output until this function returns
None.