Crate sfsm_base[][src]

Modules

Enums

Error type that will be returned if an error during the message polling or pushing occurred. It will indicate what the cause for the error was and return the original message in the push case.

An error type that will be returned by the state machine if something goes wrong. Specifically, when the state machine gets stuck in a state due to an internal error. The state machine is designed in a way where this should not happen, so this can largely be ignored. It is used in situations that are other wise hard to avoid without a panic!. It might be extended in the future to contains custom error codes generated from the states themselves

Enum used to indicate to the guard function if the transition should transit to the next state or remain in the current one.

Traits

An implementation of this trait will be implemented for the state machine for every state. This allows to test if the state machine is in the given state.

The PollMessage trait implementation will be generated by the add_message! macro and is used to return messages from states.

The PushMessage trait implementation will be generated by the add_message! macro and is used to send messages into the state machine where they will then be forwarded to the correct state.

Allows a state to declare that it can receive a message. Note: for the state to actually be able to receive a message, the message has to be added with the add_message! macro

Allows a state to declare that it can return a message. Note: for the state to actually be able to receive a message, the message has to be added with the add_message! macro

Trait that must be implemented by all states

Trait that must be implemented by a state that want to transition to DestinationState.