1. getitem syntax come-back
2. Define iteration in presence of aliases
3. __aliases__
4. s/Convenience/Functional/ API
5. Don't say enums created with the functional API can't be pickled, but
provide the usual precaution from the doc of pickle
from flufl.enum:
1. type(Color.red) == Color
2. All attrs of an enum that are not dunders and are not descriptors become
enumeration values
3. Given class Color(Enum), it's only valid to subclass Color if Color
defines no enumeration values
4. As a corollary to (3), class IntEnum(int, Enum) is also part of the
stdlib (and serves as an example for others)
Other issues that were contended recently but seem to have gotten resolved:
A. __call__ for by-value access, explicit getattr() for by-name access.
__getitem__ is removed from Enum
B. __int__ is removed from Enum. It's present by definition in IntEnum
NOTE: this is still an early draft that is in the process of being reviewed,
so please treat it accordingly.
* split the main section to some subsections, to make it more readable
* described non-int values
* removed mentions of implicit int-ness of Enum, which is no longer
supported (unless in IntEnum)
* described the new convenience API
* misc. cleanups