update swig on windows
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
/* Java various.i library tests */
|
||||
%module java_lib_various
|
||||
|
||||
%include "various.i"
|
||||
|
||||
%apply char **STRING_ARRAY { char **received };
|
||||
%apply char **STRING_ARRAY { char **get_names };
|
||||
%apply char **STRING_ARRAY { char **languages };
|
||||
%apply char *BYTE { char *chars };
|
||||
%apply char **STRING_OUT { char **string_ptr };
|
||||
%apply unsigned char *NIOBUFFER { unsigned char *buf };
|
||||
%typemap(freearg) char **languages "" // don't delete memory when setting global variable
|
||||
|
||||
%{
|
||||
char *langs[] = { (char *)"Hungarian", (char *)"Afrikaans", (char *)"Norwegian", NULL };
|
||||
%}
|
||||
|
||||
%inline %{
|
||||
char **languages = &langs[0];
|
||||
%}
|
||||
|
||||
%inline %{
|
||||
|
||||
int check_animals(char **received) {
|
||||
const char *expected[] = {"Cat","Dog","Cow","Goat", 0};
|
||||
int strings_match = 1;
|
||||
int i=0;
|
||||
while (expected[i]) {
|
||||
if (strcmp(received[i], expected[i]) != 0)
|
||||
strings_match = 0;
|
||||
i++;
|
||||
}
|
||||
return strings_match;
|
||||
}
|
||||
|
||||
char **get_names() {
|
||||
static char *values[] = { (char *)"Dave", (char *)"Mike", (char *)"Susan", (char *)"John", (char *)"Michelle", NULL};
|
||||
return &values[0];
|
||||
}
|
||||
|
||||
void charout(char *chars) {
|
||||
if(chars != NULL)
|
||||
sprintf(chars, "by jove");
|
||||
}
|
||||
|
||||
void char_ptr_ptr_out(char **string_ptr) {
|
||||
static char ret[] = "returned string";
|
||||
*string_ptr = ret;
|
||||
}
|
||||
|
||||
void niobuffer_fill_hello(unsigned char *buf) {
|
||||
sprintf ((char*)buf,"hello");
|
||||
}
|
||||
%}
|
||||
|
||||
Reference in New Issue
Block a user