decorators only when __debug__ == True

MRAB python at
Thu Apr 1 19:01:36 CEST 2010

Steve Holden wrote:
> MRAB wrote:
>> Steven D'Aprano wrote:
>>> On Thu, 01 Apr 2010 00:27:51 +0100, MRAB wrote:
>>>>>> A decorator shouldn't call the function it's decorating.
>>>>> *raises eyebrow*
>>>>> Surely, in the general case, a decorator SHOULD call the function it is
>>>>> decorating? I'm sure you know that, but your wording is funny and could
>>>>> confuse the OP.
>>>> What I mean is that the function that's doing the decorating shouldn't
>>>> call the function; it's the locally-defined wrapper function that calls
>>>> the decorated function.
>>> Ah, gotcha, that makes sense. Now I understand the distinction you
>>> were making. Thank you for the clarification.
>> I had the following idea: define the terms 'decorator', 'decoration' and
>> 'decoratee'. The decorator applies the decoration to the decoratee. The
>> decoratee is the function defined locally in the decorator.
> It would make more sense (to me, at least) if the decoratee were the
> function passed as an argument to the decorator.
Oops, you're right! What I meant was that the _decoration_ is the
function defined locally in the decorator.

More information about the Python-list mailing list