[Boost::ext].SML (State Machine Language/Lite/Library) | |
---|---|
Your scalable C++14 one header only State Machine Library with no dependencies (Try it online!) | GitHub |
State Machine design pattern prevents you from creating and maintaining spaghetti code.
void some_function() {
...
if ((is_running && !is_jumping) || just_started) {
...
} else if (is_boss_level && extra_feature_enabled && !ab_test) {
...
} else {
...
}
}
If above code looks somewhat similar to your code base or if you like
to avoid it [Boost].SML
may suit you!