Enum: make Flag and IntFlag members iterable (GH-22221)

This commit is contained in:
Ethan Furman 2020-09-16 13:01:00 -07:00 committed by GitHub
parent fc23a9483e
commit 7219e27087
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 32 additions and 0 deletions

View file

@ -753,6 +753,10 @@ class Flag(Enum):
type(other).__qualname__, self.__class__.__qualname__))
return other._value_ & self._value_ == other._value_
def __iter__(self):
members, extra_flags = _decompose(self.__class__, self.value)
return (m for m in members if m._value_ != 0)
def __repr__(self):
cls = self.__class__
if self._name_ is not None: