/trunk/Examples/test-suite/smart_pointer_multi.i
# · Swig · 39 lines · 32 code · 7 blank · 0 comment · 0 complexity · aeff62f7d593e551a3518b152e18eeba MD5 · raw file
- // Test cases for classes that do *NOT* result in smart-pointer wrapping
- %module smart_pointer_multi
- %inline %{
- struct Foo {
- int x;
- int getx() { return x; }
- };
- class Bar {
- Foo *f;
- public:
- Bar(Foo *f) : f(f) { }
- Foo *operator->() {
- return f;
- }
- };
- class Spam {
- Bar *b;
- public:
- Spam(Bar *b) : b(b) { }
- Bar operator->() {
- return *b;
- }
- };
- class Grok {
- Bar *b;
- public:
- Grok(Bar *b) : b(b) { }
- Bar &operator->() {
- return *b;
- }
- };
-
- %}