diff options
Diffstat (limited to 'Lib/enum.py')
| -rw-r--r-- | Lib/enum.py | 13 | 
1 files changed, 11 insertions, 2 deletions
| diff --git a/Lib/enum.py b/Lib/enum.py index c28f345..35a9c77 100644 --- a/Lib/enum.py +++ b/Lib/enum.py @@ -1,8 +1,14 @@  import sys -from collections import OrderedDict  from types import MappingProxyType, DynamicClassAttribute -__all__ = ['Enum', 'IntEnum', 'unique'] +# try _collections first to reduce startup cost +try: +    from _collections import OrderedDict +except ImportError: +    from collections import OrderedDict + + +__all__ = ['EnumMeta', 'Enum', 'IntEnum', 'unique']  def _is_descriptor(obj): @@ -476,6 +482,9 @@ class Enum(metaclass=EnumMeta):      def __str__(self):          return "%s.%s" % (self.__class__.__name__, self._name_) +    def __bool__(self): +        return bool(self._value_) +      def __dir__(self):          added_behavior = [                  m | 
