#deflate #gzip #string

compressed_string

String stored in memory in a compressed form, using the DEFLATE algorithm

1 stable release

1.0.0 Dec 30, 2018

#44 in #deflate

50 downloads per month

CC0 license

6KB
79 lines

In-memory compressed String

If your application keeps many long strings in RAM, you can reduce its memory usage by compressing the strings.

Optionally, if with_serde feature is enabled, it can also be used to serialize and deserialize strings in binary formats in an already-compressed form.

use compressed_string::ComprString;

let raw = "It uses the deflate algorithm, which has a small header overhead, \
so it's suitable even for short-ish strings";

let compr = ComprString::new(raw);

assert_eq!(109, raw.len());
assert_eq!(84, compr.compressed_len());

println!("{}", compr);
let string = compr.to_string();

lib.rs:

use compressed_string::ComprString;

let raw = "It uses the deflate algorithm, which has a small header overhead, \
so it's suitable even for short-ish strings";

let compr = ComprString::new(raw);

assert_eq!(109, raw.len());
assert_eq!(84, compr.compressed_len());

println!("{}", compr);
let string = compr.to_string();

Dependencies

~265–480KB