The great merge
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@4141 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
6fcc22a1f8
commit
516036631c
1508 changed files with 125983 additions and 44037 deletions
48
SWIG/Examples/test-suite/java_pragmas.i
Normal file
48
SWIG/Examples/test-suite/java_pragmas.i
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
|
||||
// Test case uses all the Java pragmas which are for tailoring the generated JNI class and Java module class.
|
||||
|
||||
%module java_pragmas
|
||||
|
||||
%pragma(java) jniclassimports=%{
|
||||
import java.lang.*; // For Exception
|
||||
%}
|
||||
|
||||
%pragma(java) jniclassclassmodifiers="public"
|
||||
%pragma(java) jniclassbase="Exception"
|
||||
%pragma(java) jniclassinterfaces="Cloneable"
|
||||
|
||||
%pragma(java) jniclasscode=%{
|
||||
// jniclasscode pragma code: Static block so that the JNI class loads the C++ DLL/shared object when the class is loaded
|
||||
static {
|
||||
try {
|
||||
System.loadLibrary("java_pragmas");
|
||||
} 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);
|
||||
}
|
||||
}
|
||||
%}
|
||||
|
||||
|
||||
%pragma(java) moduleimports=%{
|
||||
import java.io.*; // For Serializable
|
||||
%}
|
||||
|
||||
%pragma(java) moduleclassmodifiers="public final"
|
||||
%pragma(java) modulebase="Object"
|
||||
%pragma(java) moduleinterfaces="Serializable"
|
||||
|
||||
%pragma(java) modulecode=%{
|
||||
public static void added_function(String s) {
|
||||
// Added function
|
||||
}
|
||||
%}
|
||||
|
||||
|
||||
%inline %{
|
||||
int *get_int_pointer() {
|
||||
static int number = 10;
|
||||
return &number;
|
||||
}
|
||||
%}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue