[][src]Module devker::zlib

Zlib encode/decode

Examples

Easy to use.

use devker::prelude::{zlib_decode, zlib_encode, BlockType, Cache};

let mut cache = Cache::new();
let v = String::from("Hello world, this is a wonderful world !");
let v_in = v.into_bytes();

// Encode.
let encoded = zlib_encode(&v_in, BlockType::Fixed, &mut cache);
// Decode.
let decoded = zlib_decode(&encoded, &mut cache).unwrap();
assert_eq!(v_in, decoded);

Reusable cache.

use devker::prelude::{zlib_decode, zlib_encode, BlockType, Cache};

let mut cache = Cache::new();

// First try.

let v = String::from("Hello world, this is a wonderful world !");
let v_in = v.into_bytes();

let encoded = zlib_encode(&v_in, BlockType::Fixed, &mut cache);
let decoded = zlib_decode(&encoded, &mut cache).unwrap();
assert_eq!(v_in, decoded);

// Another try.

let v = String::from("The cache can be reused !");
let v_in = v.into_bytes();

let encoded = zlib_encode(&v_in, BlockType::Fixed, &mut cache);
let decoded = zlib_decode(&encoded, &mut cache).unwrap();
assert_eq!(v_in, decoded);

Functions

zlib_decode
zlib_decode_to
zlib_encode