From 3aa6fbbc7cfc7ccecc6a955df62181d5ac64e21c Mon Sep 17 00:00:00 2001 From: Dirk Ziegelmeier Date: Thu, 29 Aug 2024 09:50:25 +0200 Subject: [PATCH] Update README.md --- README.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/README.md b/README.md index 96f88bf..a0073ec 100644 --- a/README.md +++ b/README.md @@ -424,6 +424,15 @@ Example: void (Fsm::ImplPtr)(Fsm::Event event) +### Execution order + +The order of execution of guards/actions/entry/exit are as follows: + +- Evaluation of all necessary guards to select a transition +- Exit actions from source state up to least common ancestor parent state +- Transition actions +- Entry actions from least common ancestor parent state to target state + ### Logging fsm_.on_state_change_ = [](Fsm::Ref fsm, Fsm::Event event, Fsm::StateRef old_state, Fsm::StateRef new_state)