diff options
Diffstat (limited to 'debug_toolbar/utils')
| -rw-r--r-- | debug_toolbar/utils/functional.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/debug_toolbar/utils/functional.py b/debug_toolbar/utils/functional.py new file mode 100644 index 0000000..1dbb734 --- /dev/null +++ b/debug_toolbar/utils/functional.py @@ -0,0 +1,14 @@ +try: + from django.utils.functional import cached_property +except ImportError: # Django < 1.4 + class cached_property(object): + """ + Decorator that creates converts a method with a single + self argument into a property cached on the instance. + """ + def __init__(self, func): + self.func = func + + def __get__(self, instance, type): + res = instance.__dict__[self.func.__name__] = self.func(instance) + return res |
