/* comment */ %module mytest #define myconst (4L >> 2) const char const * myconstcharconst = ";)"; /* Arrays */ struct marr { const char sa[255][50]; int ia[333][][]; int (*fa[10])(float, char, char); }; /* Function pointers */ int (*foo(int,int (*)(int)))(char*, double); void (*bar(int,int (*)(int)))(); int (*funcArr[4])(char,char)(float, char, char); void funcArr2(int (*pt2Func[3])(float, char, char)); int (*funcArr3(char,char))(float, char, char)[6]; char *(*baz(double (*)(int,int))[19])(char, char); /* Forward declare */ struct myStruct; myStruct myStructTest(MyStruct*** s); /* Typedefs - need to figure out if there's a way to hook into these */ typedef struct myOpaque myOpaque; typedef int (*td1)(float, char, char); td1** td1t(pt2function[5]); /* Unions */ union u { uint64_t a; uint32_t b; }; test* ut(test,test t,test); /* Enums */ enum { a, b, c }; enum e1 { d, e, f }; enum e2 { g = 72, h = 1, h2 = 2 << 3, i }; enum e3 { k = 1, l = 2, m = 3 }; enum e4 { o = 0, p = 1, q = 2 }; e1 e1t(); e2 e2t(); e3 e3t(); e4 e4t();