blob: fd53a224ee5e7738697008d05978a7bf2296deb8 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
|
/*
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
|