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/access_change.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/access_change.i')
| -rw-r--r-- | Examples/test-suite/access_change.i | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/Examples/test-suite/access_change.i b/Examples/test-suite/access_change.i new file mode 100644 index 0000000..aca5af3 --- /dev/null +++ b/Examples/test-suite/access_change.i @@ -0,0 +1,51 @@ +%module access_change + +// test access changing from protected to public + +%inline %{ + +template<typename T> class Base { +public: + virtual ~Base() {} + virtual int *PublicProtectedPublic1() { return 0; } + int *PublicProtectedPublic2() { return 0; } + virtual int *PublicProtectedPublic3() { return 0; } + int *PublicProtectedPublic4() { return 0; } +protected: + virtual int * WasProtected1() { return 0; } + int * WasProtected2() { return 0; } + virtual int * WasProtected3() { return 0; } + int * WasProtected4() { return 0; } +}; + +template<typename T> class Derived : public Base<T> { +public: + int * WasProtected1() { return 0; } + int * WasProtected2() { return 0; } + using Base<T>::WasProtected3; + using Base<T>::WasProtected4; +protected: + virtual int *PublicProtectedPublic1() { return 0; } + int *PublicProtectedPublic2() { return 0; } + using Base<T>::PublicProtectedPublic3; + using Base<T>::PublicProtectedPublic4; +}; + +template<typename T> class Bottom : public Derived<T> { +public: + int * WasProtected1() { return 0; } + int * WasProtected2() { return 0; } + using Base<T>::WasProtected3; + using Base<T>::WasProtected4; + int *PublicProtectedPublic1() { return 0; } + int *PublicProtectedPublic2() { return 0; } + int *PublicProtectedPublic3() { return 0; } + int *PublicProtectedPublic4() { return 0; } +}; +%} + +%template(BaseInt) Base<int>; +%template(DerivedInt) Derived<int>; +%template(BottomInt) Bottom<int>; + + |
