by Angel Leon. March 17, 2015;
Last update on December 14, 2023
Updated on February 27, 2023
Updated August 29, 2019.
| #include <cassert> | |
| #include <variant> | |
| #include <optional> | |
| #include <string> | |
| template <typename Child, typename Initial, typename Accepting, typename... Rest> | |
| struct StateMachine { | |
| using StateVariant = std::variant<Initial, Accepting, Rest...>; | |
| template <typename Events> |