[−][src]Crate blosc
Rust bindings for the C-Blosc block-oriented compression library.
Blosc is a high performance compressor optimized for binary data. It is
especially good at compressing arrays of similar data. For example, floats
that fit a particular statistical distribution, integers from a restricted
range, or pointers that all share the same alignment. It also works well on
arrays of Struct
s with similar content.
Unlike most other compression libraries, Blosc is block-oriented, rather than stream-oriented. This works well when the entire dataset to be compressed/decompressed is available at once.
Example
let data: Vec<u32> = vec![1, 1, 2, 5, 8, 13, 21, 34, 55, 89, 144]; let ctx = Context::new(); let compressed = ctx.compress(&data[..]); let decompressed = decompress(&compressed).unwrap(); assert_eq!(data, decompressed);
Structs
Buffer | An opaque Blosc-compressed buffer. |
Context | Holds basic settings for |
Enums
Clevel | The desired compression level. Higher levels mean more compression. |
Compressor | Compressor selection. |
ShuffleMode | Controls Blosc's shuffle operation. |
Functions
decompress | Decompress a |
decompress_bytes⚠ | Decompress arbitrary data into a newly allocated |