]> git.openstreetmap.org Git - osqa.git/blobdiff - forum/modules/decorators.py
OSQA-263
[osqa.git] / forum / modules / decorators.py
index 17d248b1559b378f950da64f53e87404afe2f1a8..a4c1fadd7dfacac0deb7250c85133732f453187d 100644 (file)
@@ -37,7 +37,7 @@ def decorate(origin, needs_origin=True):
                 return origin\r
             return decorator\r
 \r
-        raise Exception('Not an decoratable function: %s' % origin.name)\r
+        raise TypeError('Not a decoratable function: %s' % origin.__name__)\r
 \r
     def decorator(fn):\r
         origin.decorate(fn, needs_origin)\r
@@ -46,6 +46,12 @@ def decorate(origin, needs_origin=True):
     return decorator\r
 \r
 \r
+def decorate_all(module):\r
+    [setattr(module, n, decoratable(f)) for n, f in\r
+        [(n, getattr(module, n)) for n in dir(module)]\r
+        if (callable(f)) and (not inspect.isclass(f)) and (f.__module__ == module.__name__)]\r
+\r
+\r
 \r
 \r
 \r