| import char_binary.*; | |
| public class char_binary_runme { | |
| static { | |
| try { | |
| System.loadLibrary("char_binary"); | |
| } catch (UnsatisfiedLinkError e) { | |
| System.err.println("Native code library failed to load. See the chapter on Dynamic Linking Problems in the SWIG Java documentation for help.\n" + e); | |
| System.exit(1); | |
| } | |
| } | |
| public static void main(String argv[]) { | |
| Test t = new Test(); | |
| String hile = "hile"; | |
| if (t.strlen(hile) != 4) | |
| throw new RuntimeException("bad multi-arg typemap"); | |
| if (t.ustrlen(hile) != 4) | |
| throw new RuntimeException("bad multi-arg typemap"); | |
| String hil0 = "hil\0"; | |
| if (t.strlen(hil0) != 4) | |
| throw new RuntimeException("bad multi-arg typemap"); | |
| if (t.ustrlen(hil0) != 4) | |
| throw new RuntimeException("bad multi-arg typemap"); | |
| if (t.strlen(null) != 0) | |
| throw new RuntimeException("bad multi-arg typemap"); | |
| if (t.ustrlen(null) != 0) | |
| throw new RuntimeException("bad multi-arg typemap"); | |
| // creating a raw char* | |
| SWIGTYPE_p_char pc = char_binary.new_pchar(5); | |
| char_binary.pchar_setitem(pc, 0, 'h'); | |
| char_binary.pchar_setitem(pc, 1, 'o'); | |
| char_binary.pchar_setitem(pc, 2, 'l'); | |
| char_binary.pchar_setitem(pc, 3, 'a'); | |
| char_binary.pchar_setitem(pc, 4, '\0'); | |
| /* FIXME: incompatible types: SWIGTYPE_p_char cannot be converted to String | |
| if (t.strlen(pc) != 4) | |
| throw new RuntimeException("bad multi-arg typemap"); | |
| if (t.ustrlen(pc) != 4) | |
| throw new RuntimeException("bad multi-arg typemap"); | |
| */ | |
| /* FIXME: pc cannot be converted to String | |
| char_binary.setVar_pchar(pc); | |
| */ | |
| char_binary.setVar_pchar("hola"); | |
| if (!char_binary.getVar_pchar().equals("hola")) | |
| throw new RuntimeException("bad pointer case"); | |
| /* FIXME: pc cannot be converted to String | |
| char_binary.setVar_namet(pc); | |
| */ | |
| char_binary.setVar_namet("hola"); | |
| if (!char_binary.getVar_namet().equals("hola")) | |
| throw new RuntimeException("bad pointer case"); | |
| char_binary.delete_pchar(pc); | |
| } | |
| } |