{ "info": { "author": "Haak Saxberg", "author_email": "haak.erling@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "solid\n=====\n\nA state machine implementation for Python --- which *isn't* solely designed to parse strings!\n\n\nwhy state machines?\n-------------------\n\nThey're cool! Also, easy to reason about --- a state machine design enables you\nto compartmentalize responsibilites in a way that functions simply don't.\n\n\nwhy \"solid\"?\n------------\n\nIt's a convoluted name: it's a state machine library written in python;\nsnake is another word for python that sounds like state --- and Solid Snake is\na fairly well known character who kicks serious butt. Thus, \"solid\".\n\nhello, world\n------------\n\nLet's define a super-simple state machine with two states: one that prints\n\"Hello\" and one that prints \"World\":\n\n.. code-block:: python\n\n from solid.machines import BaseMachine\n from solid.states import BaseState, is_entry_state\n from solid.transition import to\n\n\n class HelloMachine(BaseMachine):\n\n @is_entry_state\n class Hello(BaseState):\n def body(self):\n print \"Hello\"\n\n return to(HelloMachine.World)\n\n class World(BaseState):\n def body(self):\n print \"World\"\n\nFrom an intertpreter (or whatever):\n\n.. code-block:: python\n\n >>> h = HelloMachine()\n >>> h.start()\n Hello\n World\n >>>\n\nand that's pretty much all there is to it.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/haaksmash/solid", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "solid", "package_url": "https://pypi.org/project/solid/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/solid/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://github.com/haaksmash/solid" }, "release_url": "https://pypi.org/project/solid/0.2.0/", "requires_dist": null, "requires_python": null, "summary": "Pythonic state machines", "version": "0.2.0" }, "last_serial": 2319128, "releases": { "0.1.0": [], "0.1.1": [ { "comment_text": "", "digests": { "md5": "620fdb7990a1ad1d690d0a4cfaf8099e", "sha256": "fe9004836f5aa8907cb23e451151bc8ea316d643d66997185fd13de23969645c" }, "downloads": -1, "filename": "solid-0.1.1.tar.gz", "has_sig": false, "md5_digest": "620fdb7990a1ad1d690d0a4cfaf8099e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6274, "upload_time": "2014-11-06T06:01:41", "url": "https://files.pythonhosted.org/packages/f7/56/07f5209d89fea52bb77f80c3147e682b75f5337e186570f5d8e742c3938b/solid-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "0f65a003f046ee68ab4f6257c1f134c5", "sha256": "baca30e61a933ff2e06bd99d031e35de1975fa1d0c1a3d28e733e3d97fae51b2" }, "downloads": -1, "filename": "solid-0.1.2.tar.gz", "has_sig": false, "md5_digest": "0f65a003f046ee68ab4f6257c1f134c5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6588, "upload_time": "2014-11-06T06:20:52", "url": "https://files.pythonhosted.org/packages/f4/0b/fe1682e1c45dfa9841930d448920fad19dc4638cd2342ceaa273e182c6ba/solid-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "fbb29c48e21bbe4bb9a6fef50ddb5c95", "sha256": "dda8018ace540ede7ad8f1b7e9147adb441d2ed26550b1dd3435b4d430cb5cc0" }, "downloads": -1, "filename": "solid-0.1.3.tar.gz", "has_sig": false, "md5_digest": "fbb29c48e21bbe4bb9a6fef50ddb5c95", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6596, "upload_time": "2014-11-06T06:26:55", "url": "https://files.pythonhosted.org/packages/34/d0/ced83b9fc609ea81cd5074532bd9aa47cf0573455246246fd342727bea23/solid-0.1.3.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "9e85c5ab00cbd1c035d54180fc8a0c60", "sha256": "93eaf438c38175f429bdadaf0122fc06fd71e39f76fb96261215c2b824db560e" }, "downloads": -1, "filename": "solid-0.2.0.tar.gz", "has_sig": false, "md5_digest": "9e85c5ab00cbd1c035d54180fc8a0c60", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6661, "upload_time": "2016-09-01T17:50:01", "url": "https://files.pythonhosted.org/packages/34/af/b9645f5120d93452ad356f23f9d209063c7fcfe780e3cc4c3ac36e707d35/solid-0.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9e85c5ab00cbd1c035d54180fc8a0c60", "sha256": "93eaf438c38175f429bdadaf0122fc06fd71e39f76fb96261215c2b824db560e" }, "downloads": -1, "filename": "solid-0.2.0.tar.gz", "has_sig": false, "md5_digest": "9e85c5ab00cbd1c035d54180fc8a0c60", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6661, "upload_time": "2016-09-01T17:50:01", "url": "https://files.pythonhosted.org/packages/34/af/b9645f5120d93452ad356f23f9d209063c7fcfe780e3cc4c3ac36e707d35/solid-0.2.0.tar.gz" } ] }