changeset 17:734d26329c82

from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
author Jeff Hammel <jhammel@mozilla.com>
date Mon, 29 Jul 2013 22:14:44 -0700
parents 4353d36a2f80
children 4fd7fb12b782
files actions.py
diffstat 1 files changed, 32 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
new file mode 100644
--- /dev/null
+++ b/actions.py
@@ -0,0 +1,32 @@
+#!/usr/bin/env python
+
+# STUB: from
+# http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
+
+class Actions(object):
+
+    def __init__(self):
+        self.functions = {}
+
+    def __call__(self, function, dependencies):
+        import pdb; pdb.set_trace()
+        self.functions[function.func_name] = function
+        return function
+
+    def do(self, func_name):
+        self.functions[func_name]()
+
+action = Actions()
+
+@action
+def foo():
+    print "hello"
+
+@action('foo')
+def bar():
+    print "goodbye"
+
+if __name__ == '__main__':
+    pass
+
+action.do('bar')