[Python-Dev] The decorator module
Phillip J. Eby
pje at telecommunity.com
Mon May 9 18:31:43 CEST 2005
At 01:08 AM 5/9/2005 -0400, Michele Simionato wrote:
>On 5/6/05, Phillip J. Eby <pje at telecommunity.com> wrote:
> > In this case, the informally-discussed proposal is to add a mutable
> > __signature__ to functions, and have it be used by inspect.getargspec(), so
> > that decorators can copy __signature__ from the decoratee to the decorated
> > function.
>Is there in the plans any facility to copy functions? Currently I am doing
> "Creates an independent copy of a function."
> c = func.func_code
> nc = new.code(c.co_argcount, c.co_nlocals, c.co_stacksize, c.co_flags,
> c.co_code, c.co_consts, c.co_names, c.co_varnames,
> c.co_filename, c.co_name, c.co_firstlineno,
> c.co_lnotab, c.co_freevars, c.co_cellvars)
> return new.function(nc, func.func_globals, func.func_name,
> func.func_defaults, func.func_closure)
>and I *hate* it!
You don't need to copy the code object; functions can share the same code
object just fine, and in fact for closures they do all the time.
More information about the Python-Dev