[−][src]Trait enum_iterator::IntoEnumIterator
Trait to iterate over the variants of a field-less enum.
Field-less (a.k.a. C-like) enums are enums whose variants don't have additional data.
This trait is meant to be derived.
Example
use enum_iterator::IntoEnumIterator; #[derive(Clone, IntoEnumIterator, PartialEq)] enum Direction {North, South, West, East} fn main() { assert_eq!(Direction::VARIANT_COUNT, 4); assert!(Direction::into_enum_iter().eq([Direction::North, Direction::South, Direction::West, Direction::East].iter() .cloned())); }
Associated Types
type Iterator: Iterator<Item = Self> + ExactSizeIterator + FusedIterator + Copy
Type of the iterator over the variants.
Associated Constants
const VARIANT_COUNT: usize
Number of variants.
Required methods
fn into_enum_iter() -> Self::Iterator
Returns an iterator over the variants.
Variants are yielded in the order they are defined in the enum.