mirror of https://github.com/swig/swig
94 lines
1.7 KiB
OpenEdge ABL
94 lines
1.7 KiB
OpenEdge ABL
/*
|
|
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
|