Trait IntoEnumIterator   
pub trait IntoEnumIterator: Sized {
    type Iterator: Iterator<Item = Self> + Clone + DoubleEndedIterator + ExactSizeIterator + FusedIterator;
    // Required method
    fn iter() -> Self::Iterator;
}Expand description
This trait designates that an Enum can be iterated over. It can
be auto generated using the EnumIter derive macro.
§Example
// You need to bring the type into scope to use it!!!
use strum::{EnumIter, IntoEnumIterator};
#[derive(EnumIter, Debug)]
enum Color {
    Red,
    Green { range: usize },
    Blue(usize),
    Yellow,
}
// Iterate over the items in an enum and perform some function on them.
fn generic_iterator<E, F>(pred: F)
where
    E: IntoEnumIterator,
    F: Fn(E),
{
    for e in E::iter() {
        pred(e)
    }
}
generic_iterator::<Color, _>(|color| println!("{:?}", color));Required Associated Types§
type Iterator: Iterator<Item = Self> + Clone + DoubleEndedIterator + ExactSizeIterator + FusedIterator
Required Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.