view actions.py @ 18:4fd7fb12b782

TWO AWESOME TOOLS!
author Jeff Hammel <jhammel@mozilla.com>
date Thu, 22 Aug 2013 13:08:36 -0700
parents 734d26329c82
children
line wrap: on
line source

#!/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')