[Python-Dev] Enum: subclassing? (original) (raw)
Guido van Rossum guido at python.org
Wed May 1 23:07:51 CEST 2013
- Previous message: [Python-Dev] Enum: subclassing?
- Next message: [Python-Dev] Enum: subclassing?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Wed, May 1, 2013 at 2:04 PM, Eli Bendersky <eliben at gmail.com> wrote:
On Wed, May 1, 2013 at 2:00 PM, Antoine Pitrou <solipsis at pitrou.net> wrote: On Wed, 1 May 2013 13:57:11 -0700 Eli Bendersky <eliben at gmail.com> wrote: > > I still don't understand what you mean, sorry. Like, this: > > class MyEmptyEnum(Enum): > pass > > Why would you want to subclass MyEmptyEnum ? > > Or do you mean this: > > class IntEnum(int, Enum): > pass > > Now I can have: > > class SocketFamily(IntEnum): > ?? > > If it's the latter, then why allow subclassing explicitly just for this > reason? Because I may want to share methods accross all concrete subclasses of IntEnum (or WhateverEnum). You mean this? class BehaviorMixin: # bla bla class MyBehavingIntEnum(int, BehaviorMixin, Enum): foo = 1 bar = 2
It's a common pattern to do this with a base class rather than a mixin, though, and I think the rule "only allow subclassing empty enums" makes a lot of sense.
-- --Guido van Rossum (python.org/~guido)
- Previous message: [Python-Dev] Enum: subclassing?
- Next message: [Python-Dev] Enum: subclassing?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]