Struct async_compression::tokio::write::ZstdDecoder
source · pub struct ZstdDecoder<W> { /* private fields */ }
Expand description
A zstd decoder, or decompressor
This structure implements an AsyncWrite
interface and will
take in compressed data and write it uncompressed to an underlying stream.
Implementations§
source§impl<W: AsyncWrite> ZstdDecoder<W>
impl<W: AsyncWrite> ZstdDecoder<W>
sourcepub fn new(read: W) -> ZstdDecoder<W>
pub fn new(read: W) -> ZstdDecoder<W>
Creates a new decoder which will take in compressed data and write it uncompressed to the given stream.
sourcepub fn with_params(inner: W, params: &[DParameter]) -> Self
pub fn with_params(inner: W, params: &[DParameter]) -> Self
Creates a new decoder, using the specified parameters, which will read compressed data from the given stream and emit a decompressed stream.
sourcepub fn with_dict(inner: W, dictionary: &[u8]) -> Result<Self>
pub fn with_dict(inner: W, dictionary: &[u8]) -> Result<Self>
Creates a new decoder, using the specified compression level and pre-trained dictionary, which will read compressed data from the given stream and emit an uncompressed stream.
Dictionaries provide better compression ratios for small files, but are required to be present during decompression. The dictionary used must be the same as the one used for compression.
§Errors
Returns error when dictionary
is not valid.
sourcepub fn get_ref(&self) -> &W
pub fn get_ref(&self) -> &W
Acquires a reference to the underlying reader that this decoder is wrapping.
sourcepub fn get_mut(&mut self) -> &mut W
pub fn get_mut(&mut self) -> &mut W
Acquires a mutable reference to the underlying reader that this decoder is wrapping.
Note that care must be taken to avoid tampering with the state of the reader which may otherwise confuse this decoder.
sourcepub fn get_pin_mut(self: Pin<&mut Self>) -> Pin<&mut W>
pub fn get_pin_mut(self: Pin<&mut Self>) -> Pin<&mut W>
Acquires a pinned mutable reference to the underlying reader that this decoder is wrapping.
Note that care must be taken to avoid tampering with the state of the reader which may otherwise confuse this decoder.
sourcepub fn into_inner(self) -> W
pub fn into_inner(self) -> W
Consumes this decoder returning the underlying reader.
Note that this may discard internal state of this decoder, so care should be taken to avoid losing resources when this is called.
Trait Implementations§
source§impl<W: AsyncWrite> AsyncWrite for ZstdDecoder<W>
impl<W: AsyncWrite> AsyncWrite for ZstdDecoder<W>
source§fn poll_write(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
buf: &[u8],
) -> Poll<Result<usize>>
fn poll_write( self: Pin<&mut Self>, cx: &mut Context<'_>, buf: &[u8], ) -> Poll<Result<usize>>
buf
into the object. Read moresource§fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
source§fn poll_shutdown(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
fn poll_shutdown(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
source§fn poll_write_vectored(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
bufs: &[IoSlice<'_>],
) -> Poll<Result<usize, Error>>
fn poll_write_vectored( self: Pin<&mut Self>, cx: &mut Context<'_>, bufs: &[IoSlice<'_>], ) -> Poll<Result<usize, Error>>
poll_write
, except that it writes from a slice of buffers. Read moresource§fn is_write_vectored(&self) -> bool
fn is_write_vectored(&self) -> bool
poll_write_vectored
implementation. Read more