>it took a little long but I managed to make plan A work. If you provide an internal transition table (internal_transition_table) in your fsm definition, you can avoid >having to define a second region with a single state. Instead you get a transition looking like this:
>struct internal_transition_table : boost::mpl::vector<
>Internal < event , action , guard >
>In this case, action and guard are functors but it works with other rows too.
>You will need the latest trunk version.
Thanks, excellent work, I’ll give this a try. What are the trade-offs/advantages between this approach and plan b? Are there any performance differences, or mostly just style methodology?