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

2013年2月24日 17:52:39 -0800

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 *
intcompat_printint(PyObject *self, PyObject *args)
{
 int value;
 if (!PyArg_ParseTuple(args, "i", &value))
 return NULL;
 printf("and the value is: %d\n", value);
 Py_RETURN_NONE;
}
>>> 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
Full module code is here:
http://bazaar.launchpad.net/~barry/+junk/intcompat/files
Cheers,
-Barry

Attachment: signature.asc
Description: PGP signature

_______________________________________________
Python-Dev mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to