[−][src]Struct xz::bufread::XzDecoder
A xz decoder, or decompressor.
This structure implements a BufRead
interface and takes a stream of
compressed data as input, providing the decompressed data when read from.
Implementations
impl<R> XzDecoder<R> where
R: BufRead,
[src]
R: BufRead,
pub fn new(r: R) -> XzDecoder<R>ⓘ
[src]
Creates a new decoder which will decompress data read from the given stream.
pub fn new_multi_decoder(r: R) -> XzDecoder<R>ⓘ
[src]
Creates a new decoder which will decompress data read from the given input. All the concatenated xz streams from input will be consumed.
pub fn new_stream(r: R, stream: Stream) -> XzDecoder<R>ⓘ
[src]
Creates a new decoder with a custom Stream
.
The Stream
can be pre-configured for various checks, different
decompression options/tuning, etc.
impl<R> XzDecoder<R>
[src]
pub fn get_ref(&self) -> &R
[src]
Acquires a reference to the underlying stream
pub fn get_mut(&mut self) -> &mut R
[src]
Acquires a mutable reference to the underlying stream
Note that mutation of the stream may result in surprising results if this encoder is continued to be used.
pub fn into_inner(self) -> R
[src]
Consumes this decoder, returning the underlying reader.
pub fn total_in(&self) -> u64
[src]
Returns the number of bytes that the decompressor has consumed.
Note that this will likely be smaller than what the decompressor actually read from the underlying stream due to buffering.
pub fn total_out(&self) -> u64
[src]
Returns the number of bytes that the decompressor has produced.
Trait Implementations
impl<R> Read for XzDecoder<R> where
R: BufRead,
[src]
R: BufRead,
fn read(&mut self, buf: &mut [u8]) -> Result<usize, Error>
[src]
fn read_vectored(&mut self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize, Error>
1.36.0[src]
fn is_read_vectored(&self) -> bool
[src]
unsafe fn initializer(&self) -> Initializer
[src]
fn read_to_end(&mut self, buf: &mut Vec<u8>) -> Result<usize, Error>
1.0.0[src]
fn read_to_string(&mut self, buf: &mut String) -> Result<usize, Error>
1.0.0[src]
fn read_exact(&mut self, buf: &mut [u8]) -> Result<(), Error>
1.6.0[src]
fn by_ref(&mut self) -> &mut Self
1.0.0[src]
fn bytes(self) -> Bytes<Self>
1.0.0[src]
fn chain<R>(self, next: R) -> Chain<Self, R> where
R: Read,
1.0.0[src]
R: Read,
fn take(self, limit: u64) -> Take<Self>
1.0.0[src]
impl<W> Write for XzDecoder<W> where
W: Write,
[src]
W: Write,
fn write(&mut self, buf: &[u8]) -> Result<usize, Error>
[src]
fn flush(&mut self) -> Result<(), Error>
[src]
fn write_vectored(&mut self, bufs: &[IoSlice<'_>]) -> Result<usize, Error>
1.36.0[src]
fn is_write_vectored(&self) -> bool
[src]
fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>
1.0.0[src]
fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>
[src]
fn write_fmt(&mut self, fmt: Arguments<'_>) -> Result<(), Error>
1.0.0[src]
fn by_ref(&mut self) -> &mut Self
1.0.0[src]
Auto Trait Implementations
impl<R> RefUnwindSafe for XzDecoder<R> where
R: RefUnwindSafe,
R: RefUnwindSafe,
impl<R> Send for XzDecoder<R> where
R: Send,
R: Send,
impl<R> Sync for XzDecoder<R> where
R: Sync,
R: Sync,
impl<R> Unpin for XzDecoder<R> where
R: Unpin,
R: Unpin,
impl<R> UnwindSafe for XzDecoder<R> where
R: UnwindSafe,
R: UnwindSafe,
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, 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>,