Closed mhammerly closed 3 months ago
also do you have plans to push a release sometime soon? there looks to be some good stuff in the commit history since the last release at the end of 2022
I'd be happy to publish a release if desired :) It indeed has been quite a while.
changelog entry added!
re a release, including from git is fine for my project and i would feel bad nudging for a big release if it resulted in a bunch of new issues you don't have bandwidth for lol. but i imagine users who aren't watching the github would be pleased to see these unreleased features whenever you find a good time
naturally if there are any problems related to this please @ me and i'll try to help
I'll merge and and release this tomorrow morning when I'm back in the office. Thanks!
Boost.SML allows a user to provide a type which defines
log_process_event()
,log_guard()
,log_action()
, andlog_state_change()
functions that it'll call at the appropriate times (docs). This PR builds something comparable forsmlang-rs
and exhibits its usage inexamples/state_machine_logger.rs
.It's not an exact match with Boost.SML's:
log_guard()
andlog_action()
log_state_transition()
log_process_event()
The deviations in this PR were to work around partial moves of state/event data. For example, partially moving data from the originating state into an action can be a prerequisite for creating the destination state. There wasn't an obvious way for
log_state_change()
to simultaneously access both. The example shows how this design can still be workable. It scratches my itch, anyway.