Crate slotmapvec [] [src]

Slot map: array storage with persistent indices

Vec<T>-like collection with stable indices. The underlying array's indices are re-used by incementing a versioning tag in the index type.

The SlotMapIndex type consists of a u32 for storing the index into the underlying array, and a u32 for storing the version. Deleting and inserting more times than the maximum value of u32 will cause overflow and index conflict bugs.

Examples

let mut map = SlotMapVec::new();

map.insert(123213);
let idx = map.insert(34234);
map.insert(654654);

map.remove(idx);
let idx2 = map.insert(999);

println!("Map {:?}", map);
println!("Index 2 {:?}", idx2);

Structs

Iter

An iterator over the values stored in a SlotMapVec.

IterMut

A mutable iterator over the values stored in a SlotMapVec.

SlotMapIndex

An index into a SlotMapVec.

SlotMapVec

Slot map: array storage with persistent indices