mirror of https://github.com/swig/swig
61 lines
1.7 KiB
Java
61 lines
1.7 KiB
Java
|
|
import java_enums.*;
|
|
|
|
public class java_enums_runme implements stuff {
|
|
static {
|
|
try {
|
|
System.loadLibrary("java_enums");
|
|
} 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[])
|
|
{
|
|
if (WithTrailingComma.Second != 1)
|
|
throw new RuntimeException("Incorrect value for Second");
|
|
|
|
if (WithTrailingCommaAndIgnoredFirstItem.SecondNonIgnoredOne != 2)
|
|
throw new RuntimeException("Incorrect value for SecondNonIgnoredOne");
|
|
|
|
int number = 200;
|
|
|
|
// Switch statement will only compile if these enums are initialised
|
|
// from a constant Java value, that is not from a function call
|
|
switch(number) {
|
|
case stuff.FIDDLE:
|
|
break;
|
|
case stuff.STICKS:
|
|
break;
|
|
case stuff.BONGO:
|
|
break;
|
|
case stuff.DRUMS:
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
if (stuff.DRUMS != 15)
|
|
throw new RuntimeException("Incorrect value for DRUMS");
|
|
|
|
// check typemaps use short for this enum
|
|
short poppycock = nonsense.POPPYCOCK;
|
|
short tst1 = java_enums.test1(poppycock);
|
|
short tst2 = java_enums.test2(poppycock);
|
|
|
|
// Check that stuff is an interface and not a class - we can drop the stuff keyword as this class implements the stuff interface
|
|
switch(number) {
|
|
case FIDDLE:
|
|
break;
|
|
case STICKS:
|
|
break;
|
|
case BONGO:
|
|
break;
|
|
case DRUMS:
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
}
|