From 81108375d9b2ccd0add1572da745311d4dfac505 Mon Sep 17 00:00:00 2001 From: Serhiy Storchaka Date: Tue, 26 Sep 2017 00:55:55 +0300 Subject: bpo-30152: Reduce the number of imports for argparse. (#1269) --- Lib/enum.py | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) (limited to 'Lib/enum.py') diff --git a/Lib/enum.py b/Lib/enum.py index 6d90f7dd65f..fe7cb20fc06 100644 --- a/Lib/enum.py +++ b/Lib/enum.py @@ -1,7 +1,5 @@ import sys from types import MappingProxyType, DynamicClassAttribute -from functools import reduce -from operator import or_ as _or_ # try _collections first to reduce startup cost try: @@ -744,11 +742,10 @@ class Flag(Enum): def __invert__(self): members, uncovered = _decompose(self.__class__, self._value_) - inverted_members = [ - m for m in self.__class__ - if m not in members and not m._value_ & self._value_ - ] - inverted = reduce(_or_, inverted_members, self.__class__(0)) + inverted = self.__class__(0) + for m in self.__class__: + if m not in members and not (m._value_ & self._value_): + inverted = inverted | m return self.__class__(inverted) -- cgit v1.2.3