A fine state machine
Project description
finesm

Installation
pip install finesm
Usage
from finesm import State, StateMachine
class MyStateMachine(StateMachine):
stop = State(default=True)
go = State()
@stop.on_message('switch')
def stop_switch(self):
self.set_state(go)
@stop.on_exit
def stop_exit(self):
print('exiting stop state')
@go.on_enter
def go_enter(self):
print('entering go state')
@go.on_update
def go_update(self):
print('tick')
sm = MyStateMachine()
sm.state # stop
sm.update() #
sm.send_message('switch') # exiting stop state
# entering go state
sm.update() # tick
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
finesm-1.0.0.tar.gz
(2.1 kB
view hashes)
Built Distribution
finesm-1.0.0-py3-none-any.whl
(3.2 kB
view hashes)