summaryrefslogtreecommitdiff
path: root/libs/python/pyste/tests/opaque.h
diff options
context:
space:
mode:
Diffstat (limited to 'libs/python/pyste/tests/opaque.h')
-rw-r--r--libs/python/pyste/tests/opaque.h57
1 files changed, 57 insertions, 0 deletions
diff --git a/libs/python/pyste/tests/opaque.h b/libs/python/pyste/tests/opaque.h
new file mode 100644
index 000000000..1947830ea
--- /dev/null
+++ b/libs/python/pyste/tests/opaque.h
@@ -0,0 +1,57 @@
+/* Copyright Bruno da Silva de Oliveira 2003. Use, modification and
+ distribution is subject to the Boost Software License, Version 1.0.
+ (See accompanying file LICENSE_1_0.txt or copy at
+ http://www.boost.org/LICENSE_1_0.txt)
+ */
+#ifndef OPAQUE_H
+#define OPAQUE_H
+
+#include <iostream>
+
+namespace opaque {
+
+
+struct C {
+ C(int v): value(v) {}
+ int value;
+};
+
+
+inline C* new_C()
+{
+ return new C(10);
+}
+
+inline C* new_C_zero()
+{
+ return new C(0);
+}
+
+inline int get(C* c)
+{
+ return c->value;
+}
+
+struct D {
+ D(double v): value(v) {}
+ double value;
+};
+
+struct A
+{
+ D* new_handle()
+ {
+ return new D(3.0);
+ }
+
+ double get(D* d)
+ {
+ return d->value;
+ }
+
+ int f(int x=0) { return x; }
+};
+
+}
+
+#endif