Comments (3)
Hi @noricor - I guess you mean that this...
...could render nicer? State-machine-cat runs into the limitations of the auto-layout engine in some occasions. I'm on the lookout for an other one.
That said if I interpret your last sentence correctly: would something like this work? Or does this miss something?
Initial.initial,
On:
events.GetState / Action.GetState
events.GetVersion / Action.GetVersion
events.SetLogLevel / Action.SetLogLevel
{
foo:events.GetState / Action.GetState,
bar;
},
Off.final;
Initial.initial -> On;
On -> Off.final : events.Exit / Action.Exit;
On -> On : events.Reset;
from state-machine-cat.
Hi,
yes, you identified the rendering issue correctly, especially for large state machines (20-30 states with lots of transitions and stuff) this becomes a readability issue.
Regarding the second part. Yes, this would work and it is also more in line with the UML 2.5 spec which introduces an "internal transition compartment" for states
Internal Transition compartment
This compartment contains a list of internal Transitions, where each item has the following syntax:
{trigger}* ['[' guard']'] [/behavior-expression]
Where is the notation for Triggers (see sub clause 13.3.4), is a Boolean expression for a
guard, and the optional is the specification of the effect Behavior to be executed if the
Event occurrence matches the trigger and guard of the internal Transition. It is an expression written in some
textual surface language, which may be either a vendor-specific or some standard language (see sub clause
16.1).
Cheers
from state-machine-cat.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.
from state-machine-cat.
Related Issues (20)
- Overlapping transition and composite state name label HOT 3
- Publish UMD format to npm HOT 5
- Weighted Edges HOT 4
- TypeError with v9.0.0 HOT 10
- Grammar railroad diagram HOT 4
- Add support for doActivities in SCXML model representation HOT 9
- sm cat syntax does not allow to define multiple initital pseudo-states
- Vim syntax support HOT 3
- Having issue reusing smcat online interpreter
- Add an ESM distribution in addition to CommonJS HOT 3
- Export to png and pdf option HOT 5
- Advantages over PlantUML? HOT 1
- bump fast-xml-parser to >=4.1.2
- [Feature request] Package to anaconda HOT 5
- No "exports" main defined HOT 1
- Example in the documentation for a composite state with history, entry and exit actions and a set of substates HOT 3
- Error while using state-machine-cat in NUXT application HOT 1
- sweep(slow): replace the chai assertion library with node:assert statements HOT 3
- Initial state HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from state-machine-cat.