Thanks to visit codestin.com
Credit goes to lib.rs

19 unstable releases (3 breaking)

Uses old Rust 2015

0.3.3 Jun 12, 2015
0.3.0 Apr 25, 2015
0.0.12 Mar 30, 2015
0.0.5 Dec 23, 2014
0.0.4 Nov 28, 2014

#6 in #keyed

Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App

46,744 downloads per month
Used in 252 crates (51 directly)

MIT license

17KB
326 lines

A type-based key value store where one value type is allowed for each key.


TypeMap

A typesafe store keyed by types and containing different types of values.

It provides functionality similar to AnyMap, but is more flexible because it allows for key-value pairs, rather than enforcing that keys and values are the same type.

Key-value associations are defined through the Key trait, which uses an associated type parameter and trait coherence rules to enforce the invariants of TypeMap.

Example

#[deriving(Show, PartialEq)]
struct KeyType;

#[deriving(Show, PartialEq)]
struct Value(i32);

impl Key for KeyType { type Value = Value; }

#[test] fn test_pairing() {
    let mut map = TypeMap::new();
    map.insert::<KeyType>(Value(12));
    assert_eq!(*map.find::<KeyType>().unwrap(), Value(12);
}

Dependencies

~14KB