2 unstable releases
new 0.2.0 | Dec 10, 2024 |
---|---|
0.1.0 | Jul 18, 2024 |
#118 in Memory management
1,569 downloads per month
18KB
397 lines
BitmapAllocator
Bit allocator based on segment tree algorithm.
Example
use bitmap_allocator::{BitAlloc, BitAlloc1M};
let mut ba = BitAlloc1M::default();
ba.insert(0..16);
for i in 0..16 {
assert!(ba.test(i));
}
ba.remove(2..8);
assert_eq!(ba.alloc(), Some(0));
assert_eq!(ba.alloc(), Some(1));
assert_eq!(ba.alloc(), Some(8));
ba.dealloc(0);
ba.dealloc(1);
ba.dealloc(8);
Dependencies
~29KB