| /* |
| This test case tests that various types of arrays are working. |
| */ |
| |
| %warnfilter(SWIGWARN_TYPEMAP_CHARLEAK,SWIGWARN_TYPEMAP_VARIN_UNDEF); |
| |
| %module arrays_global |
| |
| %inline %{ |
| #define ARRAY_LEN 2 |
| |
| typedef enum {One, Two, Three, Four, Five} finger; |
| |
| typedef struct { |
| double double_field; |
| } SimpleStruct; |
| |
| char array_c [ARRAY_LEN]; |
| signed char array_sc[ARRAY_LEN]; |
| unsigned char array_uc[ARRAY_LEN]; |
| short array_s [ARRAY_LEN]; |
| unsigned short array_us[ARRAY_LEN]; |
| int array_i [ARRAY_LEN]; |
| unsigned int array_ui[ARRAY_LEN]; |
| long array_l [ARRAY_LEN]; |
| unsigned long array_ul[ARRAY_LEN]; |
| long long array_ll[ARRAY_LEN]; |
| float array_f [ARRAY_LEN]; |
| double array_d [ARRAY_LEN]; |
| SimpleStruct array_struct[ARRAY_LEN]; |
| SimpleStruct* array_structpointers[ARRAY_LEN]; |
| int* array_ipointers [ARRAY_LEN]; |
| finger array_enum[ARRAY_LEN]; |
| finger* array_enumpointers[ARRAY_LEN]; |
| const int array_const_i[ARRAY_LEN] = {10, 20}; |
| |
| %} |
| |
| %inline %{ |
| |
| const char BeginString_FIX44a[8] = "FIX.a.a"; |
| char BeginString_FIX44b[8] = "FIX.b.b"; |
| |
| const char BeginString_FIX44c[] = "FIX.c.c"; |
| char BeginString_FIX44d[] = "FIX.d.d"; |
| |
| const char* BeginString_FIX44e = "FIX.e.e"; |
| const char* const BeginString_FIX44f = "FIX.f.f"; |
| |
| typedef char name[8]; |
| typedef char namea[]; |
| |
| char* test_a(char hello[8], |
| char hi[], |
| const char chello[8], |
| const char chi[]) { |
| return hi; |
| } |
| |
| char* test_b(name a, const namea b) { |
| return a; |
| } |
| |
| int test_a(int a) { |
| return a; |
| } |
| |
| int test_b(int a) { |
| return a; |
| } |
| |
| %} |
| |
| |
| |
| #ifdef __cplusplus |
| %inline |
| { |
| |
| struct Material |
| { |
| }; |
| |
| enum { |
| Size = 32 |
| }; |
| |
| const Material * chitMat[Size]; |
| Material hitMat_val[Size]; |
| Material *hitMat[Size]; |
| } |
| |
| #endif |