An open API service indexing awesome lists of open source software.

https://github.com/vi/slab_typesafe

A type-safe wrapper for Rust's "slab" data structure
https://github.com/vi/slab_typesafe

rust slab typesafe

Last synced: about 1 year ago
JSON representation

A type-safe wrapper for Rust's "slab" data structure

Awesome Lists containing this project

README

          

# slab_typesafe
A type-safe wrapper from Rust's "slab" data structure

Prevents using [slab](https://crates.io/crates/slab) with obviously wrong keys:

```rust
#[macro_use]
extern crate slab_typesafe;

declare_slab_token!(StringHandle1);
declare_slab_token!(StringHandle2);

let mut slab1 : Slab = Slab::new();
let mut slab2 : Slab = Slab::new();

let hello = slab1.insert("hello");
let world = slab2.insert("world");

slab1[world]; // the type `Slab` cannot be indexed by `StringHandle2`
slab2.remove(hello); // expected struct `StringHandle2`, found struct `StringHandle1`
```rust