summaryrefslogtreecommitdiff
path: root/Examples/test-suite/typedef_struct.i
diff options
context:
space:
mode:
Diffstat (limited to 'Examples/test-suite/typedef_struct.i')
-rw-r--r--Examples/test-suite/typedef_struct.i43
1 files changed, 43 insertions, 0 deletions
diff --git a/Examples/test-suite/typedef_struct.i b/Examples/test-suite/typedef_struct.i
new file mode 100644
index 0000000..800d93b
--- /dev/null
+++ b/Examples/test-suite/typedef_struct.i
@@ -0,0 +1,43 @@
+%module typedef_struct
+
+%inline %{
+ typedef struct {
+ int numpoints;
+ } LineObj;
+
+ typedef LineObj MultipointObj;
+
+ typedef struct {
+#ifdef SWIG
+ %immutable;
+#endif
+ char *filename;
+ int numfonts;
+#ifdef SWIG
+ %mutable;
+#endif
+ int* fonts;
+#ifndef SWIG
+ void* map;
+#endif
+ } FontSetObj;
+
+#define MS_NOOVERRIDE -1111
+
+%}
+
+
+%inline %{
+typedef struct {
+ int a;
+ int b;
+} A_t, *B_t;
+
+A_t* make_a() {
+ return (A_t*)malloc(sizeof(A_t));
+}
+
+B_t make_b() {
+ return make_a();
+}
+%}