Skip to content

Conversation

leviathan747
Copy link
Collaborator

…actions

See #42

@coveralls
Copy link
Collaborator

coveralls commented Jan 2, 2022

Coverage Status

Coverage decreased (-0.1%) to 79.938% when pulling 5cb9a4d on leviathan747:state_label into 90b5144 on xtuml:master.

@github-actions
Copy link

github-actions bot commented Jan 2, 2022

Unit Test Results

    4 files  ±0      4 suites  ±0   1m 24s ⏱️ -4s
241 tests ±0  241 ✔️ ±0  0 💤 ±0  0 ±0 
964 runs  ±0  964 ✔️ ±0  0 💤 ±0  0 ±0 

Results for commit 5cb9a4d. ± Comparison against base commit 90b5144.

♻️ This comment has been updated with latest results.

@leviathan747 leviathan747 marked this pull request as draft January 4, 2022 22:05
@leviathan747 leviathan747 marked this pull request as ready for review January 5, 2022 02:44
@leviathan747
Copy link
Collaborator Author

This update has been published in pre-release v2.3.1a1

@john-tornblom
Copy link
Contributor

Back in the day, I envisioned this as a derived attribute, defined using an action language that is interpreted.
I'm busy with other things, but will look at this in a couple of weeks.

@leviathan747
Copy link
Collaborator Author

@john-tornblom that would be nifty, however I think unnecessary. The implementation here follows the BridgePoint pre-builder for the most part with a couple key differences:

  • Full element paths are used (BP pre-build only includes the direct parent for elements)
  • For transitions, a longer form label is employed in the format <start state> [<event name>] -> <end state>. BP only uses the event name (which is not enough to uniquely identify the transition...). The end state is not strictly needed to guarantee uniqueness, but I'm using this for generating trace logging statements, so it was advantages to create a label that is readable for debugging.

I also fixed a bug where "no event transitions" would cause pre-build to crash (I guess it's debatable whether or not this is a bug or not...)

- Include 'InstanceStateMachine' or 'ClassStateMachine' to indicate the
  type of action.
- Instead of naming transitions after the event, name them with the
  start state, event, and destination state. The destination state is
  not strictly required to uniquely identify a transition, however it is
  helpful since the label is used for debugging purposes.
@leviathan747
Copy link
Collaborator Author

It has been over a year and I have been using this successfully in Ciera. I am going to approve/merge it.

@leviathan747 leviathan747 merged commit 5f1e1d3 into xtuml:master Feb 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants