croaring-rs
A Rust wrapper for CRoaring (a C/C++ implementation at https://github.com/RoaringBitmap/CRoaring)
The original java version can be found at https://github.com/RoaringBitmap/RoaringBitmap
Usage example
use Bitmap;
let mut rb1 = create;
rb1.add;
rb1.add;
rb1.add;
rb1.add;
rb1.add;
rb1.add;
rb1.add;
rb1.run_optimize;
let mut rb2 = create;
rb2.add;
rb2.add;
rb2.add;
rb2.run_optimize;
let mut rb3 = create;
assert_eq!;
assert!;
rb1.and_inplace;
rb3.add;
rb3.or_inplace;
let mut rb4 = fast_or;
rb1.and_inplace;
println!;
rb3.add;
rb3.or_inplace;
println!;
rb3.add;
rb3.or_inplace;
println!;
println!;
println!;
rb4 = fast_or;
println!;
Building locally
git clone --recursive https://github.com/saulius/croaring-rs/
cd croaring-rs
cargo build
Tested on Rust stable/beta/nightly and LLVM version 3.8.
Testing
Running unit tests and doc tests:
cargo test
Running benchmark suite (currently on Rust nightly toolchain only):
cargo bench
Documentation
Current documentation is available at https://saulius.github.io/croaring-rs/croaring/