summaryrefslogtreecommitdiff
path: root/Examples/python/swigrun/runme.py
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@baserock.org>2009-08-18 20:56:02 +0000
committerLorry <lorry@roadtrain.codethink.co.uk>2012-09-25 16:59:08 +0000
commit9f8a09ed743cedd9547bf0661d518647966ab114 (patch)
tree9c7803d3b27a8ec22e91792ac7f7932efa128b20 /Examples/python/swigrun/runme.py
downloadswig-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/swigrun/runme.py')
-rw-r--r--Examples/python/swigrun/runme.py28
1 files changed, 28 insertions, 0 deletions
diff --git a/Examples/python/swigrun/runme.py b/Examples/python/swigrun/runme.py
new file mode 100644
index 0000000..abcd964
--- /dev/null
+++ b/Examples/python/swigrun/runme.py
@@ -0,0 +1,28 @@
+# file: runme.py
+
+# This file illustrates the cross language polymorphism using directors.
+
+import example
+
+
+# CEO class, which overrides Employee::getPosition().
+
+class CEO(example.Manager):
+ def __init__(self, name):
+ example.Manager.__init__(self, name)
+ def getPosition(self):
+ return "CEO"
+ def __del__(self):
+ print "CEO.__del__(),", self.getName()
+ # for proxy class extensions that are not "disowned" and
+ # define a __del__ method, it is very important to call the
+ # base class __del__. otherwise the c++ objects will never
+ # be deleted.
+ example.Manager.__del__(self)
+
+
+
+
+e = CEO("Alice")
+m = example.convert_to_Manager(e)
+print m