{ "info": { "author": "Correctizer", "author_email": "correctizer@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3.7", "Topic :: Utilities" ], "description": "# reusegen\n\n![PyPI](https://img.shields.io/pypi/v/reusegen.svg)\n![Travis (.org)](https://img.shields.io/travis/whoiscc/reusegen.svg)\n\nGenerators are exhausted during iteration:\n\n```Python\nxs = (x * x for x in range(10))\nys = [x + 1 for x in xs] # [1, 2, ...]\nzs = [x + 2 for x in xs] # []\n```\n\nSometimes this is not expected. With reusegen, you can reuse generators like lists:\n\n```Python\nfrom reusegen import reuse\nxs = reuse(x * x for x in range(10))\nys = [x + 1 for x in xs]\nzs = [x + 1 for x in xs]\nprint(ys == zs) # True\n```\n\nAnd it also works as decorator:\n\n```Python\n@reuse\ndef double(xs):\n for x in xs:\n yield x * 2\n```\n\nBy default, the results of generator is cached. You could make it cacheless to save memory as original generator:\n\n```Python\nxs = reuse(x * x for x in range(10), cache=False)\n```\n\nThe generator will be executed multiple times.\n\n\n## TODO\n\nAdd cacheless version of `reuse`.\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": "http://github.com/whoiscc/reusegen", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "reusegen", "package_url": "https://pypi.org/project/reusegen/", "platform": "", "project_url": "https://pypi.org/project/reusegen/", "project_urls": { "Homepage": "http://github.com/whoiscc/reusegen" }, "release_url": "https://pypi.org/project/reusegen/0.1.2/", "requires_dist": null, "requires_python": "", "summary": "Cache generator's results and reuse them", "version": "0.1.2" }, "last_serial": 5202060, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "d1d7cd57f1d2e84c5c990366dabddee3", "sha256": "8c46f0dc02d814c0b970f28a5ad0717021212ab3843fb7632b312930b6460093" }, "downloads": -1, "filename": "reusegen-0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "d1d7cd57f1d2e84c5c990366dabddee3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 2944, "upload_time": "2019-04-29T06:07:30", "url": "https://files.pythonhosted.org/packages/82/6f/6c35c87f812322cb07f07ac227088801b84574086dfdc83e882b01fa9f3a/reusegen-0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "eedc9be4e0ee992df864e97fc5ad034d", "sha256": "004b361d1cc42469dc088f48f2af4c9afb02dce5cd4956ae17ba69da5e473da5" }, "downloads": -1, "filename": "reusegen-0.1.tar.gz", "has_sig": false, "md5_digest": "eedc9be4e0ee992df864e97fc5ad034d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1209, "upload_time": "2019-04-29T05:46:04", "url": "https://files.pythonhosted.org/packages/d3/c0/4fad35f74db8a231febbf7f5330438db08d6bed6d00761ef64614736a5fa/reusegen-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "5096b65014bb535a82ab31c2451cf47d", "sha256": "5749718a3614e233b3c4cff0a6414d1286acc1f260f60dfc6a11111aaa7693f2" }, "downloads": -1, "filename": "reusegen-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "5096b65014bb535a82ab31c2451cf47d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 2965, "upload_time": "2019-04-29T06:09:20", "url": "https://files.pythonhosted.org/packages/de/b5/d09160be31f2ecfb1a9adebdc01e8a76f473bf44d91a168fae26ca4ea8a6/reusegen-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3d427f2adfe8a951c34aa79eb6505192", "sha256": "621826baf3a1041e14bad7610f74649879d6a3f10661c154209e258d69b79547" }, "downloads": -1, "filename": "reusegen-0.1.1.tar.gz", "has_sig": false, "md5_digest": "3d427f2adfe8a951c34aa79eb6505192", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1911, "upload_time": "2019-04-29T06:09:22", "url": "https://files.pythonhosted.org/packages/d6/91/fdd587d02cbc6a8ed137ffd52b8cfa4121a88e8efc16bfc9d71e10346cc6/reusegen-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "743ba05e59702a2f12765d70a8ece6fc", "sha256": "ce693bd9bae0dfa2a27b6ddf570c33101b3e44002664e12aae0f98d4b30fea07" }, "downloads": -1, "filename": "reusegen-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "743ba05e59702a2f12765d70a8ece6fc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3024, "upload_time": "2019-04-29T08:02:46", "url": "https://files.pythonhosted.org/packages/e9/00/f885efd81d4296a643753383860d0e59fdebee4e7292f28b297413b924e4/reusegen-0.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "467e64265c1db675280aac1a012671bf", "sha256": "2e9ce296f6be95ac1870672ea1ca35bb7579b462481a8d8ca845ea3494d3b512" }, "downloads": -1, "filename": "reusegen-0.1.2.tar.gz", "has_sig": false, "md5_digest": "467e64265c1db675280aac1a012671bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2015, "upload_time": "2019-04-29T08:02:50", "url": "https://files.pythonhosted.org/packages/81/de/40139896d8be12f491a521f1d20326795bcb2d4f9f5278b274160c58e6b4/reusegen-0.1.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "743ba05e59702a2f12765d70a8ece6fc", "sha256": "ce693bd9bae0dfa2a27b6ddf570c33101b3e44002664e12aae0f98d4b30fea07" }, "downloads": -1, "filename": "reusegen-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "743ba05e59702a2f12765d70a8ece6fc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3024, "upload_time": "2019-04-29T08:02:46", "url": "https://files.pythonhosted.org/packages/e9/00/f885efd81d4296a643753383860d0e59fdebee4e7292f28b297413b924e4/reusegen-0.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "467e64265c1db675280aac1a012671bf", "sha256": "2e9ce296f6be95ac1870672ea1ca35bb7579b462481a8d8ca845ea3494d3b512" }, "downloads": -1, "filename": "reusegen-0.1.2.tar.gz", "has_sig": false, "md5_digest": "467e64265c1db675280aac1a012671bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2015, "upload_time": "2019-04-29T08:02:50", "url": "https://files.pythonhosted.org/packages/81/de/40139896d8be12f491a521f1d20326795bcb2d4f9f5278b274160c58e6b4/reusegen-0.1.2.tar.gz" } ] }