diff --git a/Cargo.toml b/Cargo.toml index 1535dd5..62d671f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "rustyman" -version = "0.2.1" +version = "0.2.2" edition = "2021" authors = ["Edgar "] description = "Huffman compression and decompression" diff --git a/README.md b/README.md index ab65ffa..d7a7f5f 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,27 @@ # rustyman + + +[![Version](https://img.shields.io/crates/v/rustyman)](https://crates.io/crates/rustyman) +[![Downloads](https://img.shields.io/crates/d/rustyman)](https://crates.io/crates/rustyman) +[![License](https://img.shields.io/crates/l/rustyman)](https://crates.io/crates/rustyman) +![Rust](https://github.com/edg-l/rustyman/workflows/Rust/badge.svg) +[![Docs](https://docs.rs/rustyman/badge.svg)](https://docs.rs/rustyman) + Huffman compression and decompression implemented in rust +### Example + ```rust use rustyman::Huffman; let payload = b"hello from the other side of the river"; - + let huffman = Huffman::new_from_data(payload); let compressed = huffman.compress(payload); let decompressed = huffman.decompress(&compressed); assert!(compressed.len() < payload.len()); -assert_eq!(&payload[..], decompressed) +assert_eq!(&payload[..], decompressed); ``` + +License: MIT OR Apache-2.0 diff --git a/src/lib.rs b/src/lib.rs index 04e6162..0ba5b22 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,3 +1,27 @@ +//! +//! [![Version](https://img.shields.io/crates/v/rustyman)](https://crates.io/crates/rustyman) +//! [![Downloads](https://img.shields.io/crates/d/rustyman)](https://crates.io/crates/rustyman) +//! [![License](https://img.shields.io/crates/l/rustyman)](https://crates.io/crates/rustyman) +//! ![Rust](https://github.com/edg-l/rustyman/workflows/Rust/badge.svg) +//! [![Docs](https://docs.rs/rustyman/badge.svg)](https://docs.rs/rustyman) +//! +//! Huffman compression and decompression implemented in rust +//! +//! ## Example +//! +//! ```rust +//! use rustyman::Huffman; +//! +//! let payload = b"hello from the other side of the river"; +//! +//! let huffman = Huffman::new_from_data(payload); +//! let compressed = huffman.compress(payload); +//! let decompressed = huffman.decompress(&compressed); +//! +//! assert!(compressed.len() < payload.len()); +//! assert_eq!(&payload[..], decompressed); +//! ``` + use std::{ cell::RefCell, collections::{BinaryHeap, HashMap},