- Notifications
You must be signed in to change notification settings - Fork11
Expand functools features(lru_cache) to class - methods, classmethods, staticmethods and even for (unofficial) hybrid methods.
License
youknowone/methodtools
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Expand functools features to methods, classmethods, staticmethods and even for(unofficial) hybrid methods.
For now, methodtools only provides methodtools.lru_cache.
Use methodtools module instead of functools module. Than it will work asyou expected.
frommethodtoolsimportlru_cacheclassA(object):# cached method. the storage lifetime follows `self` object@lru_cache()defcached_method(self,args): ...# cached classmethod. the storage lifetime follows `A` class@lru_cache()# the order is important!@classmethod# always lru_cache on top of classmethoddefcached_classmethod(self,args): ...# cached staticmethod. the storage lifetime follows `A` class@lru_cache()# the order is important!@staticmethod# always lru_cache on top of staticmethoddefcached_staticmethod(self,args): ...@lru_cache()# just same as functools.lru_cachedefcached_function(): ...
PyPI is the recommended way.
$ pip install methodtools
- To browse versions and tarballs, visit:
- https://pypi.python.org/pypi/methodtools/
Note
If you are working on Python 2, install also functools32.
- Documentation
- This project is derived fromRing,a rich cache interface using the same method handling technique.
- To learn more about bound method dispatching, see alsowirerope.
About
Expand functools features(lru_cache) to class - methods, classmethods, staticmethods and even for (unofficial) hybrid methods.
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors2
Uh oh!
There was an error while loading.Please reload this page.