[Python-Dev] Proposed tweaks to functools.wraps
Nick Coghlan
ncoghlan at gmail.com
Wed Aug 11 14:28:00 CEST 2010
On Wed, Aug 11, 2010 at 9:26 PM, Simon Cross
<hodgestar+pythondev at gmail.com> wrote:
> On Wed, Aug 11, 2010 at 4:39 AM, Benjamin Peterson <benjamin at python.org> wrote:
>> Namespace conflict with what? I would prefer "wraps" unless it's
>> standardized as a behavior for all decorators.
>
> Having the original function available as __wrapped__ would be really
> cool, although I'm not quite sure what the behaviour should be in
> corner cases like:
>
> * The decorator returns the original function (I suppose a reference
> to itself is okay?)
> * The decorator returns the a function that is already decorating
> something else.
Those are the corner cases that make it more appropriate to have this
as a behaviour of functools.update_wrapper() (and hence the
functools.wraps() decorator) rather than built in to the decorator
machinery.
The change will just add the following line to update_wrapper():
wrapper.__wrapped__ = wrapped
Cheers,
Nick.
--
Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia
More information about the Python-Dev
mailing list