Skip to main content

Advanced Enumerations (compatible with Python's stdlib Enum), NamedTuples, and NamedConstants

Project description

Advanced Enumerations (compatible with Python’s stdlib Enum), NamedTuples, and NamedConstants

aenum includes a Python stdlib Enum-compatible data type, as well as a metaclass-based NamedTuple implementation and a NamedConstant class.

An Enum is a set of symbolic names (members) bound to unique, constant values. Within an enumeration, the members can be compared by identity, and the enumeration itself can be iterated over. If using Python 3 there is built-in support for unique values, multiple values, auto-numbering, and suspension of aliasing (members with the same value are not identical), plus the ability to have values automatically bound to attributes.

A NamedTuple is a class-based, fixed-length tuple with a name for each possible position accessible using attribute-access notation as well as the standard index notation.

A NamedConstant is a class whose members cannot be rebound; it lacks all other Enum capabilities, however; consequently, it can have duplicate values.

Utility functions include:

  • skip: class that prevents attributes from being converted to a

    constant or enum member

  • module: inserts NamedConstant and Enum classes into sys.modules

    where it will appear to be a module whose top-level names cannot be rebound

  • extend_enum: add new members to enumerations after creation

  • enum: helper class for creating members with keywords

  • constant: helper class for creating constant members

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

aenum-1.4.5.zip (77.7 kB view details)

Uploaded Source

aenum-1.4.5.tar.gz (70.4 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

aenum-1.4.5-py3-none-any.whl (41.8 kB view details)

Uploaded Python 3

aenum-1.4.5-py2-none-any.whl (38.5 kB view details)

Uploaded Python 2

File details

Details for the file aenum-1.4.5.zip.

File metadata

  • Download URL: aenum-1.4.5.zip
  • Upload date:
  • Size: 77.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for aenum-1.4.5.zip
Algorithm Hash digest
SHA256 0eca6f833a4ab3bb6f01b634bab5ea6c91cd86e1f41ad02b81e1e165fca54099
MD5 83c44f040aa69610b5fa1471c1106101
BLAKE2b-256 ed5e78527c40b2b1344cfa9ee75f10ba6ed023dbda7db82afe70817b6fce7efd

See more details on using hashes here.

File details

Details for the file aenum-1.4.5.tar.gz.

File metadata

  • Download URL: aenum-1.4.5.tar.gz
  • Upload date:
  • Size: 70.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for aenum-1.4.5.tar.gz
Algorithm Hash digest
SHA256 88bc640a27c6e300defbad382878e95dacc2ee20f0664f526e2caa7db761a4d6
MD5 1d83188570b126022a2467a18765decc
BLAKE2b-256 dd7070cf6b8bb88b77f5f14d12dfc0cc3237ef488bdc516651aeca2a02b69d5f

See more details on using hashes here.

File details

Details for the file aenum-1.4.5-py3-none-any.whl.

File metadata

File hashes

Hashes for aenum-1.4.5-py3-none-any.whl
Algorithm Hash digest
SHA256 3e1c51d15eb4c6fab49aa63d3160530ca498501b8137c11614468ce6b24bb224
MD5 e6c48d6fe563d87a55144806e2338b72
BLAKE2b-256 a402ba81889d3e9f0bd5cfd98506b853d9fadc2b605abac23af7b27360454bf0

See more details on using hashes here.

File details

Details for the file aenum-1.4.5-py2-none-any.whl.

File metadata

File hashes

Hashes for aenum-1.4.5-py2-none-any.whl
Algorithm Hash digest
SHA256 473017e79a8b189eb97cab8df2375d2426905f074ec1a91f5aaa7aecba94c1fb
MD5 073789de065904774e0eb39c08ad7920
BLAKE2b-256 b7cc7e23a4b8f363be96c8d161df1f8889f23c0fad9b1cf2370c9039262a8772

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page