This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author ethan.furman
Recipients barry, docs@python, eli.bendersky, ethan.furman, mark
Date 2015-01-24.02:41:39
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1422067300.58.0.303835573631.issue23292@psf.upfronthosting.co.za>
In-reply-to
Content
Currently the way to add an Enum's members to a module's namespace is:

  globals().update(MyEnumeration.__members__)

but that seems quite ugly.  Is there anywhere else that the user is required to use __xxx__ methods for common functionality?

I think a new method, export_to(), would solve the problem much more nicely:

  @classmethod
  def export_to(cls, namespace):
      try:
          # assume a dict-like namespace
          namespace.update(cls.__members__)
      except AttributeError:
          # or an object-like namespace
          for name, member in cls.__members__.items():
              setattr(namespace, name, member)
History
Date User Action Args
2015-01-24 02:41:40ethan.furmansetrecipients: + ethan.furman, barry, mark, eli.bendersky, docs@python
2015-01-24 02:41:40ethan.furmansetmessageid: <1422067300.58.0.303835573631.issue23292@psf.upfronthosting.co.za>
2015-01-24 02:41:40ethan.furmanlinkissue23292 messages
2015-01-24 02:41:39ethan.furmancreate