|
fsm 0.4.1
Header-only C++20 hierarchical table-driven FSM
|
Per-state deadline declaration — a mandatory column. More...
#include <fsm.hpp>
Public Member Functions | |
| constexpr | timeout_spec ()=default |
| constexpr | timeout_spec (no_timeout_t) |
| constexpr | timeout_spec (timeout_kind kk, uint32_t m, Event e) |
Public Attributes | |
| timeout_kind | k = timeout_kind::unspecified |
| uint32_t | ms = 0 |
| Duration in milliseconds after state entry. | |
| Event | event {} |
| Event dispatched when the deadline expires. | |
Per-state deadline declaration — a mandatory column.
Every state must declare fsm::after(ms, Event) or fsm::no_timeout; the poison default makes omission a compile error. This closes the stale-deadline bug class: a previous state's timeout cannot survive by omission.
|
constexprdefault |
|
inlineconstexpr |
|
inlineconstexpr |
| Event fsm::timeout_spec< Event >::event {} |
Event dispatched when the deadline expires.
| timeout_kind fsm::timeout_spec< Event >::k = timeout_kind::unspecified |
| uint32_t fsm::timeout_spec< Event >::ms = 0 |
Duration in milliseconds after state entry.