| %module li_carrays |
| |
| %warnfilter(SWIGWARN_RUBY_WRONG_NAME) doubleArray; /* Ruby, wrong class name */ |
| |
| %include <carrays.i> |
| |
| %array_functions(int,intArray); |
| %array_class(double, doubleArray); |
| %array_class(short, shortArray); |
| |
| %inline %{ |
| typedef struct { |
| int x; |
| int y; |
| } XY; |
| XY globalXYArray[3]; |
| |
| typedef struct { |
| int a; |
| int b; |
| } AB; |
| |
| AB globalABArray[3]; |
| %} |
| |
| // Note that struct XY { ... }; gives compiler error for C when using %array_class or %array_functions, but is okay in C++ |
| %array_class(XY, XYArray) |
| %array_functions(AB, ABArray) |
| |
| %inline %{ |
| short sum_array(short x[5]) { |
| short sum = 0; |
| int i; |
| for (i=0; i<5; i++) { |
| sum = sum + x[i]; |
| } |
| return sum; |
| } |
| %} |