summaryrefslogtreecommitdiff
path: root/Examples/python/docstrings
diff options
context:
space:
mode:
Diffstat (limited to 'Examples/python/docstrings')
-rw-r--r--Examples/python/docstrings/Makefile24
-rw-r--r--Examples/python/docstrings/example.cxx4
-rw-r--r--Examples/python/docstrings/example.h4
-rw-r--r--Examples/python/docstrings/example.i14
-rw-r--r--Examples/python/docstrings/runme.py6
5 files changed, 52 insertions, 0 deletions
diff --git a/Examples/python/docstrings/Makefile b/Examples/python/docstrings/Makefile
new file mode 100644
index 0000000..f25450c
--- /dev/null
+++ b/Examples/python/docstrings/Makefile
@@ -0,0 +1,24 @@
+TOP = ../..
+SWIG = $(TOP)/../preinst-swig
+CXXSRCS = example.cxx
+TARGET = example
+INTERFACE = example.i
+LIBS = -lm
+SWIGOPT = -O
+
+all::
+ $(MAKE) -f $(TOP)/Makefile CXXSRCS='$(CXXSRCS)' SWIG='$(SWIG)' \
+ SWIGOPT='$(SWIGOPT)' \
+ TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' python_cpp
+
+static::
+ $(MAKE) -f $(TOP)/Makefile CXXSRCS='$(CXXSRCS)' SWIG='$(SWIG)' \
+ SWIGOPT='$(SWIGOPT)' \
+ TARGET='mypython' INTERFACE='$(INTERFACE)' python_cpp_static
+
+clean::
+ $(MAKE) -f $(TOP)/Makefile python_clean
+ rm -f $(TARGET).py
+
+check: all
+ $(MAKE) -f $(TOP)/Makefile python_run
diff --git a/Examples/python/docstrings/example.cxx b/Examples/python/docstrings/example.cxx
new file mode 100644
index 0000000..93e6542
--- /dev/null
+++ b/Examples/python/docstrings/example.cxx
@@ -0,0 +1,4 @@
+#include "example.h"
+
+void Foo::bar() {}
+
diff --git a/Examples/python/docstrings/example.h b/Examples/python/docstrings/example.h
new file mode 100644
index 0000000..f44dbc4
--- /dev/null
+++ b/Examples/python/docstrings/example.h
@@ -0,0 +1,4 @@
+class Foo {
+ public:
+ void bar();
+};
diff --git a/Examples/python/docstrings/example.i b/Examples/python/docstrings/example.i
new file mode 100644
index 0000000..15e08e6
--- /dev/null
+++ b/Examples/python/docstrings/example.i
@@ -0,0 +1,14 @@
+/* File : example.i */
+%module example
+
+%{
+#include "example.h"
+%}
+
+/* %feature("docstring") has to come before the declaration of the method to
+ * SWIG. */
+%feature("docstring") Foo::bar "No comment"
+
+/* Let's just grab the original header file here */
+%include "example.h"
+
diff --git a/Examples/python/docstrings/runme.py b/Examples/python/docstrings/runme.py
new file mode 100644
index 0000000..b6c95e6
--- /dev/null
+++ b/Examples/python/docstrings/runme.py
@@ -0,0 +1,6 @@
+# file: runme.py
+
+import example
+
+print "example.Foo.bar.__doc__ =", repr(example.Foo.bar.__doc__), "(Should be 'No comment')"
+