Package logilab :: Package common :: Module decorators :: Class cachedproperty

[frames] | no frames]

# Class cachedproperty

source code

    object --+
             |
            cachedproperty

    Provides a cached property equivalent to the stacking of
    @cached and @property, but more efficient.

    After first usage, the <property_name> becomes part of the object's
    __dict__. Doing:

      del obj.<property_name> empties the cache.

    Idea taken from the pyramid_ framework and the mercurial_ project.

    .. _pyramid: http://pypi.python.org/pypi/pyramid
    .. _mercurial: http://pypi.python.org/pypi/Mercurial

Instance Methods

__init__(self, wrapped) x.__init__(...) initializes x; see help(type(x)) for signature | source code

__doc__(self) | source code

__get__(self, inst, objtype=None) | source code

Inherited from `object`: `__delattr__`, `__format__`, `__getattribute__`, `__hash__`, `__new__`, `__reduce__`, `__reduce_ex__`, `__repr__`, `__setattr__`, `__sizeof__`, `__str__`, `__subclasshook__`

Properties
Inherited from `object`: `__class__`

Method Details

### __init__(self, wrapped)
(Constructor)

source code

x.__init__(...) initializes x; see help(type(x)) for signature

Overrides: object.__init__
  (inherited documentation)

### __doc__(self)

source code

Decorators:
  - `@property`