Message307629
I'm proposing to extend enum.Flag member functionality so it is iterable in a manner similar to enum.Flag subclasses.
from enum import Flag, auto
class FlagIter(Flag):
def __iter__(self):
for memeber in self._member_map_.values():
if member in self:
yield member
class Colour(FlagIter):
RED = auto()
GREEN = auto()
BLUE = auto()
YELLOW = RED | GREEN
cyan = Colour.GREEN | Colour.Blue
print(*Colour) # Colour.RED Colour.GREEN Colour.BLUE Colour.YELLOW
# Without the enhancement, 'not iterable' is thrown for these
print(*cyan) # Colour.GREEN Colour.BLUE
print(*Colour.YELLOW) # Colour.RED Colour.GREEN Colour.YELLOW
print(*~Colour.RED) # Colour.GREEN Colour.BLUE |
|
Date |
User |
Action |
Args |
2017-12-05 03:44:12 | Guy Gangemi | set | recipients:
+ Guy Gangemi |
2017-12-05 03:44:12 | Guy Gangemi | set | messageid: <1512445452.31.0.213398074469.issue32218@psf.upfronthosting.co.za> |
2017-12-05 03:44:12 | Guy Gangemi | link | issue32218 messages |
2017-12-05 03:44:11 | Guy Gangemi | create | |
|