{ "info": { "author": "zen-xu", "author_email": "zen-xu@outlook.com", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "# arg_dispatch\nfunction can be dispatched by its arguments\n\n## Example\n```python\nfrom arg_dispatch import dispatch\n\n\n# Functions\n@dispatch\ndef demo(a, b):\n return 'hello'\n \n@dispatch\ndef demo(c):\n return 'world'\n \n\ndemo(a=1, b=2) # return 'hello'\ndemo(c=3) # return 'world'\n\n# try to call a function which has not been registed\ndemo(d=4) # raise `FunctionNotRegist`\n\n# Methods\nclass Demo(object):\n @dispatch\n def demo(self, a, b):\n return 'hello'\n \n @dispatch\n def demo(self, c):\n return 'world'\n \ninstance = Demo()\ninstance.demo(a=1, b=2) # return 'hello'\ninstance.demo(c=3) # return 'world'\n\n# try to call a method which has not been registed\ninstance.demo(d=4) # raise `FunctionNotRegist`\n```\n\n## Notice\ud83d\udca3\n**positional arguments must be required**\n```python\ndemo(1, 2) # Boom!\ud83d\udca3, raise `ArgumentError`\ninstance.demo(1, 2) # Boom!\ud83d\udca3, raise `ArgumentError`\n```\n\n**default value is also not supported**\n```python\n@dispatch\ndef demo(a, b=1): # Boom!\ud83d\udca3, raise `ExistDefaultValue`\n return 'hello'\n \nclass Demo(object):\n @dispatch\n def demo(self, a, b=1): # Boom!\ud83d\udca3, raise `ExistDefaultValue`\n return 'hello'\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/zen-xu/arg_dispatch", "keywords": "dispatch", "license": "GPL-3.0", "maintainer": "zen-xu", "maintainer_email": "zen-xu@outlook.com", "name": "arg-dispatch", "package_url": "https://pypi.org/project/arg-dispatch/", "platform": "", "project_url": "https://pypi.org/project/arg-dispatch/", "project_urls": { "Homepage": "https://github.com/zen-xu/arg_dispatch", "Repository": "https://github.com/zen-xu/arg_dispatch" }, "release_url": "https://pypi.org/project/arg-dispatch/0.1.3/", "requires_dist": null, "requires_python": ">=3.6,<4.0", "summary": "function can be dispatched by its arguments", "version": "0.1.3" }, "last_serial": 5501526, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "0bd3a836459b77c1cc907dc2bff2bd42", "sha256": "fc07d122ccb14d71613f7f9b1b8b8da972f73ed0236667f845568ce5bf4729f2" }, "downloads": -1, "filename": "arg_dispatch-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "0bd3a836459b77c1cc907dc2bff2bd42", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 13368, "upload_time": "2019-07-07T07:43:54", "url": "https://files.pythonhosted.org/packages/e1/d0/0083c836f076ca8fb8ac9e0b6b6ee2186b07e0e2ea8f0116eaa368e507d7/arg_dispatch-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8c68e2050c5bd5c76b06254418f69a0a", "sha256": "7ee2581b8a6b0ac84eb15b5f5331945690f73ab1456f86c5b5f15e9cd090bd58" }, "downloads": -1, "filename": "arg_dispatch-0.1.1.tar.gz", "has_sig": false, "md5_digest": "8c68e2050c5bd5c76b06254418f69a0a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 13106, "upload_time": "2019-07-07T07:43:56", "url": "https://files.pythonhosted.org/packages/09/54/cefbb0a99b97e933230839c3183438e94643a8c4210afea06647e36b647a/arg_dispatch-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "9c7173bedb29eef7833eefe024d8d5bb", "sha256": "8b811220ea084c8e5a874cad3b702bab9f3eb36bbc2577cf5bcb63aba1cb783c" }, "downloads": -1, "filename": "arg_dispatch-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "9c7173bedb29eef7833eefe024d8d5bb", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 14796, "upload_time": "2019-07-07T15:09:09", "url": "https://files.pythonhosted.org/packages/65/fa/dcefc82842ae6d3f1ba0a24558e3522e22ee2aaa8e6de2166ce365090660/arg_dispatch-0.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8fa7049a59b3388888dbc60d57d15903", "sha256": "cbdbedd3304556124540594375edb7ce9d08dedf4548287793da8c863ffc7e16" }, "downloads": -1, "filename": "arg_dispatch-0.1.2.tar.gz", "has_sig": false, "md5_digest": "8fa7049a59b3388888dbc60d57d15903", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 14103, "upload_time": "2019-07-07T15:09:12", "url": "https://files.pythonhosted.org/packages/22/07/d00cbfa7e9e0b6966691838dc6db45284337de75f985cc3cfc2af830a892/arg_dispatch-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "ffe1caf9c6c5103c0b099f623d29c62d", "sha256": "ad8125affea7ac7a118913ede1fed11d6c596d3eac7b99051040d50e0ccab7c9" }, "downloads": -1, "filename": "arg_dispatch-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "ffe1caf9c6c5103c0b099f623d29c62d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 15352, "upload_time": "2019-07-08T14:56:00", "url": "https://files.pythonhosted.org/packages/03/cf/fd6a9adf5de3da5b579b582759adedf77574bc753eab3b58ef06aad81b87/arg_dispatch-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ee9fb2b7c2c65bd07f6eb8bfdcda379a", "sha256": "af1450b39935788eb494fed963c05fd43b4fb8254feffd15c7b8af31fa8f5a01" }, "downloads": -1, "filename": "arg_dispatch-0.1.3.tar.gz", "has_sig": false, "md5_digest": "ee9fb2b7c2c65bd07f6eb8bfdcda379a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 14941, "upload_time": "2019-07-08T14:56:02", "url": "https://files.pythonhosted.org/packages/c3/8e/753b85f970403f650fab1f5046fbef92a6a0f7ed09edac9845a08ff24234/arg_dispatch-0.1.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ffe1caf9c6c5103c0b099f623d29c62d", "sha256": "ad8125affea7ac7a118913ede1fed11d6c596d3eac7b99051040d50e0ccab7c9" }, "downloads": -1, "filename": "arg_dispatch-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "ffe1caf9c6c5103c0b099f623d29c62d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 15352, "upload_time": "2019-07-08T14:56:00", "url": "https://files.pythonhosted.org/packages/03/cf/fd6a9adf5de3da5b579b582759adedf77574bc753eab3b58ef06aad81b87/arg_dispatch-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ee9fb2b7c2c65bd07f6eb8bfdcda379a", "sha256": "af1450b39935788eb494fed963c05fd43b4fb8254feffd15c7b8af31fa8f5a01" }, "downloads": -1, "filename": "arg_dispatch-0.1.3.tar.gz", "has_sig": false, "md5_digest": "ee9fb2b7c2c65bd07f6eb8bfdcda379a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 14941, "upload_time": "2019-07-08T14:56:02", "url": "https://files.pythonhosted.org/packages/c3/8e/753b85f970403f650fab1f5046fbef92a6a0f7ed09edac9845a08ff24234/arg_dispatch-0.1.3.tar.gz" } ] }