state_enum

Macro state_enum 

Source
macro_rules! state_enum {
    (
        $(#[$meta:meta])*
        $vis:vis enum $name:ident {
            $(
                $(#[$variant_meta:meta])*
                $variant:ident
            ),* $(,)?
        }

        $(final: [$($final:ident),* $(,)?])?
        $(error: [$($error:ident),* $(,)?])?
    ) => { ... };
}
Expand description

Generate State trait implementation for simple enums.

ยงExample

use mindset::state_enum;

state_enum! {
    pub enum WorkflowState {
        Start,
        Processing,
        Done,
        Failed,
    }
    final: [Done, Failed]
    error: [Failed]
}