blob: 15a63a4571fc4c6c240d34a591e1dfebb3387085 [file] [log] [blame]
from libc.stdint cimport int8_t, int16_t, int32_t, int64_t, intptr_t
from libc.stdint cimport uint8_t, uint16_t, uint32_t, uint64_t, uintptr_t
cdef extern from *:
ctypedef bint bool
ctypedef struct va_list
cdef extern from *:
cdef enum MyCLikeEnum:
Foo1,
Bar1,
Baz1,
cdef enum MyCLikeEnum_Prepended:
Foo1_Prepended,
Bar1_Prepended,
Baz1_Prepended,
cdef struct MyFancyStruct:
int32_t i;
#ifdef __cplusplus
inline void foo();
#endif
cdef enum MyFancyEnum_Tag:
Foo,
Bar,
Baz,
cdef struct MyFancyEnum:
MyFancyEnum_Tag tag;
int32_t bar;
int32_t baz;
#ifdef __cplusplus
inline void wohoo();
#endif
cdef union MyUnion:
float f;
uint32_t u;
int32_t extra_member;
cdef struct MyFancyStruct_Prepended:
#ifdef __cplusplus
inline void prepended_wohoo();
#endif
int32_t i;
cdef enum MyFancyEnum_Prepended_Tag:
Foo_Prepended,
Bar_Prepended,
Baz_Prepended,
cdef struct MyFancyEnum_Prepended:
#ifdef __cplusplus
inline void wohoo();
#endif
MyFancyEnum_Prepended_Tag tag;
int32_t bar_prepended;
int32_t baz_prepended;
cdef union MyUnion_Prepended:
int32_t extra_member;
float f;
uint32_t u;
void root(MyFancyStruct s,
MyFancyEnum e,
MyCLikeEnum c,
MyUnion u,
MyFancyStruct_Prepended sp,
MyFancyEnum_Prepended ep,
MyCLikeEnum_Prepended cp,
MyUnion_Prepended up);