12 releases (3 stable)

1.2.0 May 11, 2023
1.1.0 May 4, 2023
1.0.0 Nov 6, 2022
0.2.7 Jun 12, 2022
0.1.0 Feb 19, 2022

#733 in Data structures

47 downloads per month



Shelves: Storing values referenced by a unique typed index.

CI Crate informations License Documentation

This is a small utility library for storing values of and reference them using a unique typed index, Ref<T>, which is a simple typed wrapper around usize.

Any data structure can be used behind the shelf as long as it provides a way to store and fetch values by usize through the implementation of the Storage trait. This library provides a Storage implementation for Vec, BTreeMap and HashMap. In addition, a Storage implementation is provided for the slab::Slab type by enabling the slab-storage feature.


Licensed under either of

at your option.


Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.


~32K SLoC