annotate actions.py @ 19:74ada5cb1cb8 default tip

more tools
author Jeff Hammel <k0scist@gmail.com>
date Fri, 04 Dec 2015 12:55:31 -0800
parents 734d26329c82
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
17
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
1 #!/usr/bin/env python
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
2
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
3 # STUB: from
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
4 # http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
5
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
6 class Actions(object):
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
7
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
8 def __init__(self):
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
9 self.functions = {}
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
10
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
11 def __call__(self, function, dependencies):
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
12 import pdb; pdb.set_trace()
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
13 self.functions[function.func_name] = function
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
14 return function
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
15
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
16 def do(self, func_name):
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
17 self.functions[func_name]()
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
18
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
19 action = Actions()
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
20
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
21 @action
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
22 def foo():
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
23 print "hello"
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
24
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
25 @action('foo')
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
26 def bar():
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
27 print "goodbye"
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
28
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
29 if __name__ == '__main__':
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
30 pass
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
31
734d26329c82 from http://k0s.org/hg/config/file/c328382f68ff/python/actions.py
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
32 action.do('bar')