Expand description
An enum mapping type.
It is implemented using an array type, so using it is as fast as using Rust arrays.
§Examples
use enum_map::{enum_map, Enum, EnumMap};
#[derive(Debug, Enum)]
enum Example {
A(bool),
B,
C,
}
let mut map = enum_map! {
Example::A(false) => 0,
Example::A(true) => 1,
Example::B => 2,
Example::C => 3,
};
map[Example::C] = 4;
assert_eq!(map[Example::A(true)], 1);
for (key, &value) in &map {
println!("{:?} has {} as value.", key, value);
}
Macros§
- enum_
map - Enum map constructor.
Structs§
- EnumMap
- An enum mapping.
- Into
Iter - A map iterator that moves out of map.
- Into
Values - An owning iterator over the values of an
EnumMap
. - Iter
- Immutable enum map iterator
- IterMut
- Mutable map iterator
- Values
- An iterator over the values of
EnumMap
. - Values
Mut - A mutable iterator over the values of
EnumMap
.
Traits§
Derive Macros§
- Enum
- Derive macro generating an implementation of trait
Enum
.