[Python-Dev] [Python-checkins] peps: Pre-alpha draft for PEP 435 (enum). The name is not important at the moment, as (original) (raw)

Ethan Furman ethan at stoneleaf.us
Mon Feb 25 04:32:17 CET 2013


On 02/24/2013 05:40 PM, Barry Warsaw wrote:

On Feb 23, 2013, at 04:02 PM, Stefan Krah wrote:

+Ordered comparisons between enumeration values are not supported. Enums are +not integers! Hmm. I think this limits interoperation with C libraries and prototyping C code. This is mostly a red-herring. flufl.enum values are C-level int compatible without actually being ints. E.g. static PyObject * intcompatprintint(PyObject *self, PyObject *args) { int value; if (!PyArgParseTuple(args, "i", &value)) return NULL; printf("and the value is: %d\n", value); PyRETURNNONE; }

from intcompat import * printint(7) and the value is: 7 from flufl.enum import make Colors = make('Colors', 'red green blue'.split()) printint(Colors.green) and the value is: 2

Okay, that's pretty cool.

I would still like the int subclass, though, as it would be an aid to me on the Python side.

-- Ethan



More information about the Python-Dev mailing list