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 Distribution

aenum-1.4.7.tar.gz (70.5 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.7-py3-none-any.whl (74.8 kB view details)

Uploaded Python 3

aenum-1.4.7-py2-none-any.whl (74.8 kB view details)

Uploaded Python 2

File details

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

File metadata

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

File hashes

Hashes for aenum-1.4.7.tar.gz
Algorithm Hash digest
SHA256 88ce58c0bc350163c695ede3a4aa425cf6031da0d3158a7974297d3bca1476af
MD5 13ad0eb919dde72a3a01e5b3c7fec1e7
BLAKE2b-256 122fdca602cac86ea2c152724e30164886a4c15388724a38a6913e67395db870

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aenum-1.4.7-py3-none-any.whl
Algorithm Hash digest
SHA256 d146e600f24f91a47177a2768136590d69f15be48ef2e96e51cb27138a745515
MD5 841fecf45a455dbdc531b95e9751c9eb
BLAKE2b-256 9646510379c4bc92ab5aef869f8521183aea133841642fc9db5b5cc1fd33ade2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aenum-1.4.7-py2-none-any.whl
Algorithm Hash digest
SHA256 a57963d7bb9d28245c6ab7447f0318bb0a5a38eb130305dd03d2ad7776b1b651
MD5 0939ac3d456c9ec2d58c36cdf6a49f4b
BLAKE2b-256 b8ee3c33d386ca520de05396e0ffe78b8049ab128532b6029a5f8740e938d706

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