cybertools/util/cache.txt
helmutm cdb9bc94d0 make internal cache implementation available for testing even when lovely.memcached is present
git-svn-id: svn://svn.cy55.de/Zope3/src/cybertools/trunk@3784 fd906abe-77d9-0310-91a1-e0d9ade77398
2010-03-26 11:18:13 +00:00

42 lines
700 B
Text

============
Data Caching
============
$Id$
>>> from cybertools.util import cache
>>> cache = cache.internalCache
>>> @cache(lambda *args: 'calc')
... def calculate():
... print 'calculating'
... return 42
>>> calculate()
calculating
42
>>> calculate()
42
>>> class Demo(object):
... id = '4711'
... def getId(self, *args):
... return self.id
... @cache(getId)
... def calculate(self):
... print 'calculating'
... return 42
>>> demo = Demo()
>>> demo.calculate()
calculating
42
>>> demo.calculate()
42
>>> demo.id = '4712'
>>> demo.calculate()
calculating
42
>>> demo.calculate()
42