| import extend_constructor_destructor.*; |
| |
| public class extend_constructor_destructor_runme { |
| |
| static { |
| try { |
| System.loadLibrary("extend_constructor_destructor"); |
| } 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[]) { |
| AStruct a = new AStruct(10); |
| checkGlobal(10); |
| BStruct b = new BStruct(20); |
| checkGlobal(20); |
| CStruct c = new CStruct(30); |
| checkGlobal(30); |
| DStruct d = new DStruct(40); |
| checkGlobal(40); |
| EStruct e = new EStruct(50); |
| checkGlobal(50); |
| FStruct f = new FStruct(60); |
| checkGlobal(60); |
| GStruct g = new GStruct(70); |
| checkGlobal(70); |
| |
| a.delete(); |
| checkGlobal(-10); |
| b.delete(); |
| checkGlobal(-20); |
| c.delete(); |
| checkGlobal(-30); |
| d.delete(); |
| checkGlobal(-40); |
| e.delete(); |
| checkGlobal(-50); |
| f.delete(); |
| checkGlobal(-60); |
| g.delete(); |
| checkGlobal(-70); |
| } |
| |
| public static void checkGlobal(int val) { |
| int global = extend_constructor_destructor.getGlobalVar(); |
| if (global != val) |
| throw new RuntimeException("global value incorrect. Expected: " + val + " got: " + global); |
| } |
| } |
| |