diff options
| author | Lorry Tar Creator <lorry-tar-importer@baserock.org> | 2009-08-18 20:56:02 +0000 |
|---|---|---|
| committer | Lorry <lorry@roadtrain.codethink.co.uk> | 2012-09-25 16:59:08 +0000 |
| commit | 9f8a09ed743cedd9547bf0661d518647966ab114 (patch) | |
| tree | 9c7803d3b27a8ec22e91792ac7f7932efa128b20 /Examples/test-suite/smart_pointer_multi.i | |
| download | swig-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/test-suite/smart_pointer_multi.i')
| -rw-r--r-- | Examples/test-suite/smart_pointer_multi.i | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/Examples/test-suite/smart_pointer_multi.i b/Examples/test-suite/smart_pointer_multi.i new file mode 100644 index 0000000..4b0aa0e --- /dev/null +++ b/Examples/test-suite/smart_pointer_multi.i @@ -0,0 +1,39 @@ +// 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; + } +}; + +%} + + |
