[Python-Dev] PEP 435 -- Adding an Enum type to the Python standard library

Glenn Linderman v+python at g.nevcal.com
Fri Apr 26 05:12:56 CEST 2013


On 4/25/2013 7:49 PM, Nick Coghlan wrote:
> On Fri, Apr 26, 2013 at 12:38 PM, Guido van Rossum <guido at python.org> wrote:
>> If the above syntax won't work, that isinstance() outcome isn't really
>> important. :-(
>>
>> Can't we do some kind of callable check? There may be some weird
>> decorators that won't work, but they aren't likely to be useful in
>> this context.
> Yeah, it may not be as tricky as I feared: adding "not
> callable(attr_val)" to the conditions for deciding whether or not to
> convert a class attribute to an instance of the enum would likely
> suffice to address the method problem.
>
> You couldn't create an enum of callables, but that would be a
> seriously weird thing to do anyway....

But aren't all classes callable? But you are referring to the initial 
values of the items, but still, why should those be restricted from 
being any general object?  Not being _functions_ is probably OK, but I'm 
not sure how strong the distinction is between functions and classes, 
regarding being callable...

So objects are only callable if the class contains a def __call__, but 
still, that seems quite restrictive.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20130425/aac0673d/attachment.html>


More information about the Python-Dev mailing list