MemoizeFunction

Defined in module: wield.declarative.properties.memoized.MemoizeFunction

class MemoizeFunction(func)[source][github]

Bases: object

cache the return value of a method

This class is meant to be used as a decorator of methods. The return value from a given method invocation will be cached on the instance whose method was invoked. All arguments passed to a method decorated with memoize must be hashable.

If a memoized method is invoked directly on its class the result will not be cached. Instead the method will be invoked like a static method: class Obj(object):

@memoize def add_to(self, arg):

return self + arg

Obj.add_to(1) # not enough arguments Obj.add_to(1, 2) # returns 3, result is not cached

from Daniel Miller on Active State http://code.activestate.com/recipes/577452-a-memoize-decorator-for-instance-methods/ MIT Licenced

__init__(func)[source][github]

Methods

__init__(func)