1# tag: cpp 2# mode: run, no-cpp-locals 3 4cdef extern from *: 5 """ 6 enum Enum1 { 7 Item1, 8 Item2 9 }; 10 11 """ 12 cdef enum Enum1: 13 Item1 14 Item2 15 16a = Item1 17b = Item2 18 19cdef Enum1 x, y 20x = Item1 21y = Item2 22 23 24def compare_enums(): 25 """ 26 >>> compare_enums() 27 (True, True, True, True) 28 """ 29 return x == a, a == Item1, b == y, y == Item2 30 31 32cdef extern from * namespace "Namespace1": 33 """ 34 namespace Namespace1 { 35 enum Enum2 { 36 Item3, 37 Item4 38 }; 39 } 40 """ 41 cdef enum Enum2: 42 Item3 43 Item4 44 45c = Item3 46d = Item4 47 48cdef Enum2 z, w 49z = Item3 50w = Item4 51 52 53def compare_namespace_enums(): 54 """ 55 >>> compare_namespace_enums() 56 (True, True, True, True) 57 """ 58 return z == c, c == Item3, d == w, d == Item4 59