{ "info": { "author": "", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "# finesm [![Build Status](https://travis-ci.org/wesleyks/finesm.svg?branch=master)](https://travis-ci.org/wesleyks/finesm) [![Coverage Status](https://coveralls.io/repos/github/wesleyks/finesm/badge.svg?branch=master)](https://coveralls.io/github/wesleyks/finesm?branch=master)\n\n## Installation\n\n`pip install finesm`\n\n## Usage\n\n```python\nfrom finesm import State, StateMachine\n\nclass MyStateMachine(StateMachine):\n stop = State(default=True)\n go = State()\n\n @stop.on_message('switch')\n def stop_switch(self):\n self.set_state(go)\n\n @stop.on_exit\n def stop_exit(self):\n print('exiting stop state')\n\n @go.on_enter\n def go_enter(self):\n print('entering go state')\n\n @go.on_update\n def go_update(self):\n print('tick')\n\n\nsm = MyStateMachine()\nsm.state # stop\nsm.update() #\nsm.send_message('switch') # exiting stop state\n # entering go state\nsm.update() # tick\n\n```\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/wesleyks/finesm", "keywords": "finite-state machine state", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "finesm", "package_url": "https://pypi.org/project/finesm/", "platform": "", "project_url": "https://pypi.org/project/finesm/", "project_urls": { "Homepage": "https://github.com/wesleyks/finesm" }, "release_url": "https://pypi.org/project/finesm/1.0.0/", "requires_dist": null, "requires_python": "", "summary": "A fine state machine", "version": "1.0.0" }, "last_serial": 4492416, "releases": { "0.0.0": [ { "comment_text": "", "digests": { "md5": "11f4c96e4dc4fbace1e7f5bd33b4e785", "sha256": "a70c25d706b83e99ae312f01eac1a6ac36c97a24e00d90af6676c8f21d6bcc80" }, "downloads": -1, "filename": "finesm-0.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "11f4c96e4dc4fbace1e7f5bd33b4e785", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 3526, "upload_time": "2017-03-14T19:51:31", "url": "https://files.pythonhosted.org/packages/c6/a8/80355459c19146702daaa7ef55501a1a75876cfd6df553af98572189ca5c/finesm-0.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "74367fd1c25c3f364019d87469ac6b9b", "sha256": "55291dae7d996ff67ba3d384fdf6734d0261fd8d3254fba2b978796bb936ff92" }, "downloads": -1, "filename": "finesm-0.0.0.tar.gz", "has_sig": false, "md5_digest": "74367fd1c25c3f364019d87469ac6b9b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2086, "upload_time": "2017-03-14T19:51:32", "url": "https://files.pythonhosted.org/packages/e9/b4/30df9e7146ad4a14b338d89ab0cb2be3f652c21c9a370b5cbfb144f82a6c/finesm-0.0.0.tar.gz" } ], "0.0.1": [ { "comment_text": "", "digests": { "md5": "d588637820fae9c4f2143b1a761b5b38", "sha256": "07b3eb49aae99c59957f5a8cd1912081e5fd1e52c050de70a17a4d309af5e81d" }, "downloads": -1, "filename": "finesm-0.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d588637820fae9c4f2143b1a761b5b38", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 3527, "upload_time": "2017-04-05T01:36:59", "url": "https://files.pythonhosted.org/packages/3c/60/84e3d2735e8f5d455dd4e4ce14f4d29cd1f8d2c2077b9b29ee7a154a9ad2/finesm-0.0.1-py2.py3-none-any.whl" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "b540c7920f150491ad0c20ecc1da56ca", "sha256": "3cde691e83a00b8b70d76822b6382e94b164b0cc1db83559b03c9d7ba8f3e699" }, "downloads": -1, "filename": "finesm-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "b540c7920f150491ad0c20ecc1da56ca", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3167, "upload_time": "2018-11-16T05:25:56", "url": "https://files.pythonhosted.org/packages/2f/4d/aa428923218183cd4ecd7f846edd4958c67e8a9cdab924ee405914460caa/finesm-1.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e9a78493167ebab682d700b7dd87f020", "sha256": "4c1f780106ab4cad7100f2abdcf485a7278779e9d101cc68aeae7a59e8107b5e" }, "downloads": -1, "filename": "finesm-1.0.0.tar.gz", "has_sig": false, "md5_digest": "e9a78493167ebab682d700b7dd87f020", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2121, "upload_time": "2018-11-16T05:25:58", "url": "https://files.pythonhosted.org/packages/00/7a/f5f62e8a0843f1aee356e886a1049d09e45b332f256b0484b0e41acf37eb/finesm-1.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b540c7920f150491ad0c20ecc1da56ca", "sha256": "3cde691e83a00b8b70d76822b6382e94b164b0cc1db83559b03c9d7ba8f3e699" }, "downloads": -1, "filename": "finesm-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "b540c7920f150491ad0c20ecc1da56ca", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3167, "upload_time": "2018-11-16T05:25:56", "url": "https://files.pythonhosted.org/packages/2f/4d/aa428923218183cd4ecd7f846edd4958c67e8a9cdab924ee405914460caa/finesm-1.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e9a78493167ebab682d700b7dd87f020", "sha256": "4c1f780106ab4cad7100f2abdcf485a7278779e9d101cc68aeae7a59e8107b5e" }, "downloads": -1, "filename": "finesm-1.0.0.tar.gz", "has_sig": false, "md5_digest": "e9a78493167ebab682d700b7dd87f020", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2121, "upload_time": "2018-11-16T05:25:58", "url": "https://files.pythonhosted.org/packages/00/7a/f5f62e8a0843f1aee356e886a1049d09e45b332f256b0484b0e41acf37eb/finesm-1.0.0.tar.gz" } ] }