1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
//! 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, //! 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); //! } //! } //! ``` #![no_std] #![deny(missing_docs)] pub use enum_map_derive::Enum; pub use enum_map_internals::{enum_map, Enum, EnumMap, IntoIter, Iter, IterMut, Values, ValuesMut};