comachine
comachine copied to clipboard
Release 1.0
API refinement
- [x] Make
onEnternon suspending - [x] Add non suspending
on<Event> - [x] Add
getExtraandsetExtramethods - [x] Add support for multiple handlers for the same event (to be used in delegates) & main handlers
- [x] Rename
launchintolaunchInStateto distinguish it from coroutine'slaunch
Tests
- [x] Add tests for
updateState {} - [x] Add tests for
transitionTo {} - [x] Add tests for
onEnter {} - [x] Add tests for
onExit {} - [x] Add tests for
onSequential<Event> {} - [x] Add tests for
onConcurrent<Event> {} - [x] Add tests for
onLatest<Event> {} - [x] Add tests for
onSingle<Event> {}
Runtime validation
- [x] Prevent from adding multiple handlers of the same event type (with tests)
- [ ] Prevent already started comachine from starting again (with tests)
Documentation
- [ ] Add DSL documentation
- [ ] Create quick reference - a single page documentation describing all features
Configuration
- [x] Configure release upload to maven
- [ ] Configure CI build & tests
- [ ] Update README.md
Composition
- [x] Add DSL and implementation for machine composition
- [x] Add documentation
- [x] Add tests