pub trait FsmState<F: FsmBackend> where
Self: Sized, {
fn on_entry<'a, Q: FsmEventQueue<F>>(
&mut self,
context: &mut EventContext<'a, F, Q>
);
fn on_exit<'a, Q: FsmEventQueue<F>>(
&mut self,
context: &mut EventContext<'a, F, Q>
);
fn fsm_state() -> <<F as FsmBackend>::States as FsmStates<F>>::StateKind;
fn execute_on_entry<'a, 'b, 'c, 'd, Q, I, T>(
context: &'d mut DispatchContext<'a, 'b, 'c, F, Q, I, T>,
region: FsmRegionId
)
where
Q: FsmEventQueue<F>,
I: Inspect,
<F as FsmBackend>::States: AsMut<Self>,
T: FsmTimers<F>,
{ ... }
fn execute_on_exit<'a, 'b, 'c, 'd, Q, I, T>(
context: &'d mut DispatchContext<'a, 'b, 'c, F, Q, I, T>,
region: FsmRegionId
)
where
Q: FsmEventQueue<F>,
I: Inspect,
<F as FsmBackend>::States: AsMut<Self>,
T: FsmTimers<F>,
{ ... }
}
Expand description
A state’s entry and exit actions.
Required methods
fn on_entry<'a, Q: FsmEventQueue<F>>(
&mut self,
context: &mut EventContext<'a, F, Q>
)
fn on_entry<'a, Q: FsmEventQueue<F>>(
&mut self,
context: &mut EventContext<'a, F, Q>
)
Action that is executed whenever this state is being entered.
fn on_exit<'a, Q: FsmEventQueue<F>>(
&mut self,
context: &mut EventContext<'a, F, Q>
)
fn on_exit<'a, Q: FsmEventQueue<F>>(
&mut self,
context: &mut EventContext<'a, F, Q>
)
Action that is executed whenever this state is being exited.