2 unstable releases

0.2.0 Dec 10, 2024
0.1.0 Jul 18, 2024

#122 in Memory management

Download history 439/week @ 2024-12-16 644/week @ 2024-12-23 558/week @ 2024-12-30 435/week @ 2025-01-06 168/week @ 2025-01-13 139/week @ 2025-01-20 55/week @ 2025-01-27 381/week @ 2025-02-03 358/week @ 2025-02-10 285/week @ 2025-02-17 315/week @ 2025-02-24 866/week @ 2025-03-03 1551/week @ 2025-03-10 1154/week @ 2025-03-17 926/week @ 2025-03-24 1310/week @ 2025-03-31

5,150 downloads per month

MIT license

18KB
397 lines

BitmapAllocator

Crates.io Docs.rs CI

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