pub struct Decoder<'a, R: Read> { /* private fields */ }
Expand description
Specify the decoding settings, such as logging, input, and output.
To create a new Decoder
, use for_reader()
, for_bytes()
, or
for_file()
. Then, change any of the decoder settings.
Finally, decode the input data with decode
.
let original = b"ABBACABBACD";
let compressed = Encoder::for_bytes(original)
.encode_to_vec()
.unwrap();
let decompressed = Decoder::for_bytes(&compressed)
.decode()
.unwrap();
assert_eq!(&original[..], decompressed);
You can use a Decoder
to get the VpkHeader
with header()
or TreeInfo
with trees()
:
let mut decoder = Decoder::for_bytes(&compressed);
let size = decoder.header().unwrap().size as usize;
assert_eq!(size, original.len());