Crate enum_map [] [src]

An enum mapping type.

It is implemented using an array type, so using it is as fast as using Rust arrays.

Examples

#[macro_use]
extern crate enum_map;

use enum_map::EnumMap;

#[derive(Debug, EnumMap)]
enum Example {
    A,
    B,
    C,
}

fn main() {
    let mut map = enum_map! {
        Example::A => 1,
        Example::B => 2,
        Example::C => 3,
    };
    map[Example::C] = 4;

    assert_eq!(map[Example::A], 1);

    for (key, &value) in &map {
        println!("{:?} has {} as value.", key, value);
    }
}

Re-exports

pub use self::enum_map_derive::*;

Macros

enum_map

Enum map constructor.

Structs

EnumMap

An enum mapping.

IntoIter

A map iterator that moves out of map.

Iter

Immutable enum map iterator

IterMut

Mutable map iterator

Traits

Internal

Internal enum mapping type

Functions

index_for_key

Gets an index of an enum key in a slice.