Struct inflate::DeflateDecoder [] [src]

pub struct DeflateDecoder<R> { /* fields omitted */ }

A DEFLATE decoder/decompressor.

This structure implements a Read interface and takes a stream of compressed data that implements the Read trait as input, provoding the decompressed data when read from.

Example

use std::io::Read;
use inflate::DeflateDecoder;
const TEST_STRING: &'static str = "Hello, world";
let encoded = vec![243, 72, 205, 201, 201, 215, 81, 40, 207, 47, 202, 73, 1, 0];
let mut decoder = DeflateDecoder::new(&encoded[..]);
let mut output = Vec::new();
let status = decoder.read_to_end(&mut output);
assert_eq!(String::from_utf8(output).unwrap(), TEST_STRING);

Methods

impl<R: Read> DeflateDecoder<R>
[src]

[src]

Create a new Deflatedecoderbuf to read from a raw deflate stream.

[src]

Create a new DeflateDecoderbuf that reads from a zlib wrapped deflate stream.

[src]

Create a new DeflateDecoderbuf that reads from a zlib wrapped deflate stream. without calculating and validating the checksum.

[src]

Resets the decompressor, and replaces the current inner BufRead instance by r. without doing any extra reallocations.

Note that this function doesn't ensure that all data has been output.

[src]

Returns a reference to the underlying reader.

[src]

Returns a mutable reference to the underlying reader.

Note that mutation of the reader may cause surprising results if the decoder is going to keep being used.

[src]

Returns the total number of bytes output from this decoder.

impl<R> DeflateDecoder<R>
[src]

[src]

Resets the decoder, but continue to read from the same reader.

Note that this function doesn't ensure that all data has been output.

[src]

Returns the total bytes read from the underlying reader.

[src]

Returns the total number of bytes output from this decoder.

[src]

Returns the calculated checksum value of the currently decoded data.

Will return 0 for cases where the checksum is not validated.

Trait Implementations

impl<R: Read> Read for DeflateDecoder<R>
[src]

[src]

Pull some bytes from this source into the specified buffer, returning how many bytes were read. Read more

[src]

🔬 This is a nightly-only experimental API. (read_initializer)

Determines if this Reader can work with buffers of uninitialized memory. Read more

1.0.0
[src]

Read all bytes until EOF in this source, placing them into buf. Read more

1.0.0
[src]

Read all bytes until EOF in this source, placing them into buf. Read more

1.6.0
[src]

Read the exact number of bytes required to fill buf. Read more

1.0.0
[src]

Creates a "by reference" adaptor for this instance of Read. Read more

1.0.0
[src]

Transforms this Read instance to an [Iterator] over its bytes. Read more

[src]

🔬 This is a nightly-only experimental API. (io)

the semantics of a partial read/write of where errors happen is currently unclear and may change

Transforms this Read instance to an [Iterator] over [char]s. Read more

1.0.0
[src]

Creates an adaptor which will chain this stream with another. Read more

1.0.0
[src]

Creates an adaptor which will read at most limit bytes from it. Read more