Skip to main content

compress_rle_rs/
lib.rs

1//! # compress-rle-rs
2//!
3//! A pure-Rust run-length encoding library with multiple RLE variants.
4//!
5//! # Modules
6//!
7//! - [`basic`] — Basic RLE: `[(count, byte)]` pairs.
8//! - [`packbits`] — PackBits encoding as specified by Apple / TIFF.
9//! - [`bitmap`] — Modified RLE for 1-bit bitmap rows.
10//! - [`encode`] — High-level encode API.
11//! - [`decode`] — High-level decode API.
12//!
13//! # Quick Start
14//!
15//! ```
16//! use compress_rle_rs::{encode, decode};
17//!
18//! let data = b"AAAAAABBBBCCD";
19//! let encoded = encode::basic_rle(data);
20//! let decoded = decode::basic_rle(&encoded);
21//! assert_eq!(data.as_slice(), decoded.as_slice());
22//! ```
23
24pub mod basic;
25pub mod packbits;
26pub mod bitmap;
27pub mod encode;
28pub mod decode;
29
30#[cfg(test)]
31mod tests;