[−][src]Struct snap::raw::Decoder
Decoder is a raw decoder for decompressing bytes in the Snappy format.
This decoder does not use the Snappy frame format and simply decompresses
the given bytes as if it were returned from Encoder
.
Unless you explicitly need the low-level control, you should use
read::FrameDecoder
instead, which decompresses the Snappy frame format.
Implementations
impl Decoder
[src]
pub fn new() -> Decoder
[src]
Return a new decoder that can be used for decompressing bytes.
pub fn decompress(&mut self, input: &[u8], output: &mut [u8]) -> Result<usize>
[src]
Decompresses all bytes in input
into output
.
input
must be a sequence of bytes returned by a conforming Snappy
compressor.
The size of output
must be large enough to hold all decompressed
bytes from the input
. The size required can be queried with the
decompress_len
function.
On success, this returns the number of bytes written to output
.
Errors
This method returns an error in the following circumstances:
- Invalid compressed Snappy data was seen.
- The total space required for decompression exceeds
2^32 - 1
. output
has length less thandecompress_len(input)
.
pub fn decompress_vec(&mut self, input: &[u8]) -> Result<Vec<u8>>
[src]
Decompresses all bytes in input
into a freshly allocated Vec
.
This is just like the decompress
method, except it allocates a Vec
with the right size for you. (This is intended to be a convenience
method.)
This method returns an error under the same circumstances that
decompress
does.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Decoder
impl Send for Decoder
impl Sync for Decoder
impl Unpin for Decoder
impl UnwindSafe for Decoder
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,