Should nested classes in an Enum be Enum members?
Ethan Furman <ethan at stoneleaf.us> writes:
> Consider the following Enum definition:
> class Color(Enum):
> RED = 1
> GREEN = 2
> BLUE = 3
> def lower(self):
> return self.name.lower()
> def spam(self):
> return "I like %s eggs and spam!" % self.lower
> class SomeClass:
That dumbfounds my intuitions.
Specifically, I can't make sense of why someone would want to have a
class that is simultaneously behaving as an enumerated type, *and* has
an API of custom callable attributes.
> Should `SomeClass` be an enum member? When would it be useful to
> have an embedded class in an Enum be an enum member?
I can't think of a satisfactory answer to the question ?Why is SomeClass
defined inside that enumerated type at all??
> So I'm asking the community: What real-world examples can you offer
> for either behavior?
That set is empty.
I'd be going straight to the author of that code; or, if that weren't an
option, re-factoring that code at the next opportunity.
\ ?Our urge to trust our senses overpowers what our measuring |
`\ devices tell us about the actual nature of reality.? ?Ann |
_o__) Druyan, _Cosmos_, 2014 |