Crate index_pool [−] [src]
A pool which manages allocation of unique indices. Acts like a psuedo-memory allocator.
extern crate index_pool; use index_pool::IndexPool; fn main() { let mut pool = IndexPool::new(); let a = pool.new_id(); let b = pool.new_id(); let c = pool.new_id(); let mut data = vec![""; pool.maximum()]; data[a] = "apple"; data[b] = "banana"; data[c] = "coconut"; // Nevermind, no bananas pool.return_id(b).unwrap(); let p = pool.new_id(); data[p] = "pineapple"; assert_eq!(data, vec!["apple", "pineapple", "coconut"]); }
Modules
iter |
Structs
AlreadyInUse | |
AlreadyReturned | |
IndexPool |
A pool which manages allocation of unique indices. Acts like a psuedo-memory allocator. |