{ "info": { "author": "George Sakkis", "author_email": "george.sakkis@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "Memoized\n========\n\nThe common general versions of memoized decorators (`[1]`_, `[2]`_, `[3]`_) are\noften good enough but they incur some overhead that can be avoided in more\nspecial cases (`[4]`_). This package exposes a single callable, ``memoized``,\nthat picks an efficient memoization implementation based on the decorated\nfunction's signature and a few user provided options. The included benchmark\nfile gives an idea of the performance characteristics of the different possible\nimplementations.\n\nAdditionally, ``memoized`` allows:\n\n- Creating signature preserving decorators (through the decorator_ module).\n- Passing an external object as the underlying storage (e.g. an LRU cache)\n instead of a dict that is used by default.\n\nMore options for customization and optimization may be added in the future.\n\n.. _[1]: http://wiki.python.org/moin/PythonDecoratorLibrary#Memoize\n.. _[2]: http://wiki.python.org/moin/PythonDecoratorLibrary#Alternate_memoize_as_nested_functions\n.. _[3]: http://wiki.python.org/moin/PythonDecoratorLibrary#Alternate_memoize_as_dict_subclass\n.. _[4]: http://code.activestate.com/recipes/578231-probably-the-fastest-memoization-decorator-in-the-/\n.. _decorator: https://pypi.python.org/pypi/decorator\n\n\nNews\n====\n\n0.3\n---\n\n* Python 3 compatibility.\n\n\n0.2\n---\n\n* Add ``hashable`` parameter.\n* Make it possible to use ``@memoized`` as equivalent of ``@memoized()``.\n\n0.1\n---\n\n* Initial release", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://bitbucket.org/gsakkis/memoized", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "memoized", "package_url": "https://pypi.org/project/memoized/", "platform": "", "project_url": "https://pypi.org/project/memoized/", "project_urls": { "Homepage": "https://bitbucket.org/gsakkis/memoized" }, "release_url": "https://pypi.org/project/memoized/0.3/", "requires_dist": null, "requires_python": "", "summary": "General purpose efficient memoization", "version": "0.3" }, "last_serial": 3724657, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "3204981f6e14994b0f2e45d4509acaa8", "sha256": "1e4c5be04db4d7a7ce54a4f13002e06d3c77a2ed0a87881fd8197bb7f84c6fb8" }, "downloads": -1, "filename": "memoized-0.1.tar.gz", "has_sig": false, "md5_digest": "3204981f6e14994b0f2e45d4509acaa8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3196, "upload_time": "2013-07-06T22:38:02", "url": "https://files.pythonhosted.org/packages/a9/f0/09e9a8b01e61abebdebdbc1b73a27a82d054799ba65378e57f5b0eb17056/memoized-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "ab3c44f629e94173f2117fba3eac95b8", "sha256": "6e71b011f44d0319f328363055d60ff25986e12b45883f6bb7bc1d5a89dc6973" }, "downloads": -1, "filename": "memoized-0.2.tar.gz", "has_sig": false, "md5_digest": "ab3c44f629e94173f2117fba3eac95b8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3426, "upload_time": "2013-07-29T13:46:25", "url": "https://files.pythonhosted.org/packages/89/a6/7023d603096397c88ca671b8ce1bf986eb7f7df19f5450c171a24f0d923d/memoized-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "08c12a0c486ddbb655815c369cd2295b", "sha256": "cdce8bacc6941a64f9a825067602c13810cfd9b84efaaf024c400ef6e7d378d8" }, "downloads": -1, "filename": "memoized-0.3.tar.gz", "has_sig": false, "md5_digest": "08c12a0c486ddbb655815c369cd2295b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3480, "upload_time": "2018-04-01T18:08:30", "url": "https://files.pythonhosted.org/packages/7b/9b/91731f60e6fba2c476b69dfe80dbf748b639a9ab559656928474235d62c6/memoized-0.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "08c12a0c486ddbb655815c369cd2295b", "sha256": "cdce8bacc6941a64f9a825067602c13810cfd9b84efaaf024c400ef6e7d378d8" }, "downloads": -1, "filename": "memoized-0.3.tar.gz", "has_sig": false, "md5_digest": "08c12a0c486ddbb655815c369cd2295b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3480, "upload_time": "2018-04-01T18:08:30", "url": "https://files.pythonhosted.org/packages/7b/9b/91731f60e6fba2c476b69dfe80dbf748b639a9ab559656928474235d62c6/memoized-0.3.tar.gz" } ] }