This commit is contained in:
2025-07-18 19:05:41 +03:00
parent e7c2826b5c
commit 464c262e08
12 changed files with 419 additions and 104 deletions

View File

@@ -7,6 +7,7 @@
#include <concepts>
#include <functional>
#include <future>
#include <memory>
#include <mutex>
#include <string_view>
@@ -318,7 +319,7 @@ protected:
std::vector<std::string_view> _eventID{};
std::recursive_mutex _transitionMutex{};
std::future<void> _currentStateThreadFuture;
static MccFiniteStateMachine& copyInstance(const MccFiniteStateMachine* from, MccFiniteStateMachine* to)
{
@@ -400,7 +401,6 @@ public:
if constexpr (requires(curr_state_t inst) {
{ inst.exit(std::declval<EvT&>()) };
}) {
// std::get<curr_state_t>(*states).exit(event);
std::get<curr_state_t>(*states).exit(*p_event);
} else if constexpr (requires(curr_state_t inst) {
{ inst.exit() };
@@ -412,7 +412,6 @@ public:
if constexpr (requires(EvT inst) {
{ inst.onTransit() };
}) {
// event.onTransit();
p_event->onTransit();
}
@@ -423,7 +422,6 @@ public:
if constexpr (requires(to_state_t inst) {
{ inst.enter(std::declval<EvT&>()) };
}) {
// std::get<to_state_t>(*states).enter(event);
std::get<to_state_t>(*states).enter(*p_event);
} else if constexpr (requires(to_state_t inst) {
{ inst.enter() };