[][src]Struct snap::raw::Encoder

pub struct Encoder { /* fields omitted */ }

Encoder is a raw encoder for compressing bytes in the Snappy format.

Thie encoder does not use the Snappy frame format and simply compresses the given bytes in one big Snappy block (that is, it has a single header).

Unless you explicitly need the low-level control, you should use read::FrameEncoder or write::FrameEncoder instead, which compresses to the Snappy frame format.

It is beneficial to reuse an Encoder when possible.

Implementations

impl Encoder[src]

pub fn new() -> Encoder[src]

Return a new encoder that can be used for compressing bytes.

pub fn compress(&mut self, input: &[u8], output: &mut [u8]) -> Result<usize>[src]

Compresses all bytes in input into output.

input can be any arbitrary sequence of bytes.

output must be large enough to hold the maximum possible compressed size of input, which can be computed using max_compress_len.

On success, this returns the number of bytes written to output.

Errors

This method returns an error in the following circumstances:

  • The total number of bytes to compress exceeds 2^32 - 1.
  • output has length less than max_compress_len(input.len()).

pub fn compress_vec(&mut self, input: &[u8]) -> Result<Vec<u8>>[src]

Compresses all bytes in input into a freshly allocated Vec.

This is just like the compress 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 compress does.

Trait Implementations

impl Debug for Encoder[src]

Auto Trait Implementations

impl RefUnwindSafe for Encoder

impl Send for Encoder

impl Sync for Encoder

impl Unpin for Encoder

impl UnwindSafe for Encoder

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.