bv-rs: bit-vectors and bit-slices for Rust

Build Status Crates.io License: MIT License: Apache 2.0

The main type exported by the library, BV, is a packed, growable bit-vector. Its API mirrors that of Vec where reasonable. The library also defines slice operations that return BitSlice or BitSliceMut, akin to Rust’s array slices but for bit-vectors. A common API to bit-vectors and bit-slices is provided by the BitVec and BitVecMut traits, which also allow treating all primitive unsigned integer types (uN) and vectors and array slices of the same primitive types as well as of bool (Vec<uN>, &[uN], &mut [uN], Vec<bool>, &[bool], and &mut [bool]) as bit-vectors.

Usage

It’s on crates.io, so you can add

toml [dependencies] bv = "0.4"

to your Cargo.toml and

rust extern crate bv;

to your crate root.

This crate supports Rust version 1.20 and newer.