Cython, кажется, не позволяет мне повторно использовать имена членов enum.
У меня есть следующие перечисления, которые я пытаюсь цитонизировать:
from enum import Enum
class Fruit(Enum):
UNKNOWN = 0
APPLE = 1
ORANGE = 2
class Animal(Enum):
UNKNOWN = 0
DOG = 1
CAT = 2
Но следующие результаты в'UNKNOWN' redeclared
ошибка компиляции:
cpdef enum Fruit:
UNKNOWN = 0
APPLE = 1
ORANGE = 2
cpdef enum Animal:
UNKNOWN = 0
DOG = 1
CAT =
Как мне исправить вышеперечисленное?
Кроме того, в идеале я хотел бы использовать NULL
в качестве имен членов перечисления вместо UNKNOWN
.Но похоже, что NULL
является привилегированным ключевым словом для Cython, хотя это не для CPython.Есть ли обходной путь?