Nick Coghlan wrote:
> Raymond Hettinger wrote:
>> Decorators like this should preserve information about the underlying
>> function:
>>
>>
>>> def deprecated(func):
>>> """This is a decorator which can be used to mark functions
>>> as deprecated. It will result in a warning being emmitted
>>> when the function is used."""
>>> def newFunc(*args, **kwargs):
>>> warnings.warn("Call to deprecated function.")
>>> return func(*args, **kwargs)
>>
>> newFunc.__name__ = func.__name__
>> newFunc.__doc__ = func.__doc__
>> newFunc.__dict__.update(func.__dict__)
>>
>>> return newFunc
>
> A utility method on function objects could simplify this:
> newFunc.update_info(func)
+1. This is really good for 90% of all decorator uses. But maybe a
better name should be found, perhaps "update_meta".
Reinhold
--
Mail address is perfectly valid!
_______________________________________________
Python-Dev mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe:
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com