|
|
|
|
|
by IgorPartola
5385 days ago
|
|
It's easy: def mydec(func, decor_param_a, decor_param_b):
print 'decor_param_a = %s' % decor_param_a
def wrapper(*args, **kwargs):
print 'about to run function'
res = func(*args, **kwargs)
print 'done running function'
return res
return wrapper
Now just do: @mydecor('foo', 'bar')
def baz():
pass
|
|
* decorate a class
* decorate a method
* have arguments
* have no arguments
extremely contrived example:
http://pastebin.com/GBuYL2af
Note that the above only works for 'new style' classes (otherwise the type signature is not 'type').
edit: dumped code in a pastebin. it got kind of long.