diff options
author | Lorry Tar Creator <lorry-tar-importer@baserock.org> | 2009-08-18 20:56:02 +0000 |
---|---|---|
committer | Lorry <lorry@roadtrain.codethink.co.uk> | 2012-09-25 16:59:08 +0000 |
commit | 9f8a09ed743cedd9547bf0661d518647966ab114 (patch) | |
tree | 9c7803d3b27a8ec22e91792ac7f7932efa128b20 /Examples/python/java | |
download | swig-tarball-master.tar.gz |
Imported from /srv/lorry/lorry-area/swig-tarball/swig-1.3.40.tar.gz.HEADswig-1.3.40master
Diffstat (limited to 'Examples/python/java')
-rw-r--r-- | Examples/python/java/Example.java | 29 | ||||
-rw-r--r-- | Examples/python/java/Makefile | 25 | ||||
-rw-r--r-- | Examples/python/java/example.i | 9 | ||||
-rw-r--r-- | Examples/python/java/runme.py | 16 |
4 files changed, 79 insertions, 0 deletions
diff --git a/Examples/python/java/Example.java b/Examples/python/java/Example.java new file mode 100644 index 0000000..91ddb1a --- /dev/null +++ b/Examples/python/java/Example.java @@ -0,0 +1,29 @@ +public class Example { + public int mPublicInt; + + public Example() { + mPublicInt = 0; + } + + public Example(int IntVal) { + mPublicInt = IntVal; + } + + + public int Add(int a, int b) { + return (a+b); + } + + public float Add(float a, float b) { + return (a+b); + } + + public String Add(String a, String b) { + return (a+b); + } + + public Example Add(Example a, Example b) { + return new Example(a.mPublicInt + b.mPublicInt); + } +} + diff --git a/Examples/python/java/Makefile b/Examples/python/java/Makefile new file mode 100644 index 0000000..326a4da --- /dev/null +++ b/Examples/python/java/Makefile @@ -0,0 +1,25 @@ +TOP = ../.. +SWIG = $(TOP)/../preinst-swig +CXXSRCS = +TARGET = example +INTERFACE = example.i +LIBS = -lm + +all:: Example.class + $(MAKE) -f $(TOP)/Makefile CXXSRCS='$(CXXSRCS)' SWIG='$(SWIG)' \ + TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' CXX="gcj" \ + CXXSHARED="gcj -fpic -shared Example.class" DEFS='' LIBS="-lstdc++" python_cpp + + +clean:: + $(MAKE) -f $(TOP)/Makefile python_clean + rm -f $(TARGET).py + rm -f *.class Example.h + +check: all + + +Example.class: Example.java + gcj -fPIC -C -c -g Example.java + gcjh Example + diff --git a/Examples/python/java/example.i b/Examples/python/java/example.i new file mode 100644 index 0000000..13d5b5e --- /dev/null +++ b/Examples/python/java/example.i @@ -0,0 +1,9 @@ +%module example +%include <cni.i> + +%{ +#include "Example.h" +%} + + +%include Example.h diff --git a/Examples/python/java/runme.py b/Examples/python/java/runme.py new file mode 100644 index 0000000..0cec8a7 --- /dev/null +++ b/Examples/python/java/runme.py @@ -0,0 +1,16 @@ +from example import * + +JvCreateJavaVM(None) +JvAttachCurrentThread(None, None) + +e1 = Example(1) +e2 = Example(2) + +print e1.Add(1,2) +print e1.Add(1.0,2.0) +e3 = e1.Add(e1,e2) +print e3.mPublicInt + +print e1.Add("1","2") + +JvDetachCurrentThread() |