This is a Rust port of the Roaring bitmap data structure, initially defined as a Java library and described in Better bitmap performance with Roaring bitmaps.
This crate only supports the current stable version of Rust, patch releases may use new features at any time.
This project uses clippy, rustfmt, and denies warnings in CI builds. To ensure your
changes will be accepted please check them with cargo clippy
(available via
cargo install clippy
on nightly rust) before submitting a pull request (along
with cargo test
as usual).
It is recommended to run the cargo bench
command inside of the benchmarks
directory.
This directory contains a library that is dedicated to benchmarking the roaring library
by using a set of real-world datasets. It is also advised to run the benchmarks on
a bare-metal machine, running them on the base branch and then on the contribution PR
branch to better see the changes.
Those benchmarks are designed on top of the criterion library, you can read more about it on the User guide.
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you shall be dual licensed as above, without any additional terms or conditions.