slab_typesafe
A type-safe wrapper from Rust's "slab" data structure
Prevents using slab with obviously wrong keys:
extern crate slab_typesafe;
declare_slab_token!;
declare_slab_token!;
let mut slab1 : = new;
let mut slab2 : = new;
let hello = slab1.insert;
let world = slab2.insert;
slab1; // the type `Slab<StringHandle1, _>` cannot be indexed by `StringHandle2`
slab2.remove; // expected struct `StringHandle2`, found struct `StringHandle1`
```rust