pub trait Action<S: State>: Send + 'static { // Required method fn reduce(&self, state: S) -> S; }
Trait that all action types must implement. Actions should define how they transform the state.