pub enum StateTransition<S> {
None,
Pop,
Push(Box<dyn State<S>>),
Switch(Box<dyn State<S>>),
Quit,
}
Expand description
A transition from one state to the other.
§Generics
- S: State data, the data that is sent to states for them to do their operations.
Variants§
None
Stay in the current state.
Pop
End the current state and go to the previous state on the stack, if any. If we Pop the last state, the state machine exits.
Push(Box<dyn State<S>>)
Push a new state on the stack.
Switch(Box<dyn State<S>>)
Pop all states on the stack and insert this one.
Quit
Pop all states and exit the state machine.
Auto Trait Implementations§
impl<S> Freeze for StateTransition<S>
impl<S> !RefUnwindSafe for StateTransition<S>
impl<S> !Send for StateTransition<S>
impl<S> !Sync for StateTransition<S>
impl<S> Unpin for StateTransition<S>
impl<S> !UnwindSafe for StateTransition<S>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more