10 releases
0.9.2 | Mar 17, 2024 |
---|---|
0.9.1 | Sep 8, 2023 |
0.2.0 | Aug 9, 2022 |
0.1.6 | Aug 9, 2022 |
0.1.4 | Jun 30, 2022 |
#423 in Data structures
1,002 downloads per month
Used in 2 crates
19KB
451 lines
Slabigator
A linked list that doesn't do dynamic memory allocations.
Things it was designed to do:
- Add to the head of the list in O(1) - What you get back is a stable slot number
- Pop from the tail of the list in O(1)
- Delete an element given its slot number in O(1)
- And nothing else.
Dumb, small, maintainable, zero dependencies.
Cargo features:
releasefast
: assume thatremove()
will always be called with a valid index. This saves some memory, but has to be used with extreme caution. That feature is not set by default.slot_u32
: useu32
as the slot type (default)slot_u64
: useu64
as the slot typeslot_usize
: useusize
as the slot type