Chris Angelico wrote:
One piece of sophistication that I would rather like to see, but don't
know how to do. Instead of *args,**kwargs, is it possible to somehow
copy in the function's actual signature? I was testing this out in
IDLE, and the fly help for the function no longer gave useful info
about its argument list.

And here it is with Michele's decorator module:

2.x code (probably the same in 3.x, but haven't tested)
----------------------------------------------------------------
from decorator import decorator

debugmode = True

def trace(func):
    if debugmode:
        @decorator
        def traced(func, *a, **ka):
            print(">", func.__name__, a, ka)
            result = func(*a, **ka)
            print("<", func.__name__)
            return result
        return traced(func)
    return func

@trace
def test(x):
    "a simple test"
    print("Test! "+x)
    return 5
----------------------------------------------------------------

~Ethan~
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to