Skip to content
/ explode Public

rust implementation of explode from the PKWARE DCL

License

Notifications You must be signed in to change notification settings

agrif/explode

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

explode

build status crates.io docs.rs

A decompression implementation for the implode algorithm from the PKWARE Data Compression Library.

This implementation is based on blast.c by Mark Adler, distributed with zlib.

Examples

To decompress a block of bytes in memory, use explode.

let bytes = vec![0x00, 0x04, 0x82, 0x24, 0x25, 0x8f, 0x80, 0x7f];
let result = explode::explode(&bytes)?;
assert_eq!(result, "AIAIAIAIAIAIA".as_bytes());

To decompress a File or other type that implements Read, use ExplodeReader.

use std::io::Read;
let mut reader = explode::ExplodeReader::new(some_file);
let mut decompressed = vec![];
reader.read_to_end(&mut decompressed)?;
// or other functions from Read

For more complicated uses that do not fit into these categories, use Explode.

License

Licensed under the MIT license. Unless stated otherwise, any contributions to this work will also be licensed this way, with no additional terms or conditions.

About

rust implementation of explode from the PKWARE DCL

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages