20 stable releases
| 2.6.0 | Feb 15, 2025 |
|---|---|
| 2.5.3 | Mar 17, 2024 |
| 2.5.1 | Aug 5, 2021 |
| 2.5.0 | May 8, 2020 |
| 1.0.7 | Sep 27, 2017 |
#64 in Data structures
89,153 downloads per month
Used in 40 crates
(12 directly)
43KB
1K
SLoC
SmallBitVec is a bit vector, a vector of single-bit values stored compactly in memory.
SmallBitVec grows dynamically, like the standard Vec<T> type. It can hold up to about one
word of bits inline (without a separate heap allocation). If the number of bits exceeds this
inline capacity, it will allocate a buffer on the heap.
Example
use smallbitvec::SmallBitVec;
let mut v = SmallBitVec::new();
v.push(true);
v.push(false);
assert_eq!(v[0], true);
assert_eq!(v[1], false);
smallbitvec
A bit vector that is the size of a pointer, and can store data either inline or
on the heap. Like the bit-vec crate but optimized for small inline size and
reduced allocations.