diff options
author | Marcelo Matus <mmatus@acms.arizona.edu> | 2004-01-22 00:41:37 +0000 |
---|---|---|
committer | Marcelo Matus <mmatus@acms.arizona.edu> | 2004-01-22 00:41:37 +0000 |
commit | e524a03a55478047fde7e9380f49f2a2047be456 (patch) | |
tree | 1d5aa72bfab5f79f7f38763a0c2a1b831e4fb3a9 /Examples/test-suite/director_frob.i | |
parent | e810800783031546e41661d7b7d0e63c5abbbb80 (diff) | |
download | swig-e524a03a55478047fde7e9380f49f2a2047be456.tar.gz |
using better names for frob
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5664 626c5289-ae23-0410-ae9c-e8d60b6d4f22
Diffstat (limited to 'Examples/test-suite/director_frob.i')
-rw-r--r-- | Examples/test-suite/director_frob.i | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/Examples/test-suite/director_frob.i b/Examples/test-suite/director_frob.i new file mode 100644 index 000000000..ebfa76d25 --- /dev/null +++ b/Examples/test-suite/director_frob.i @@ -0,0 +1,39 @@ +%module(directors="1") frob; + +%header %{ +#include <iostream> +%} + +%feature("director"); +%feature("nodirector") Bravo::abs_method(); // ok +%feature("director") Charlie::abs_method(); // ok +%feature("nodirector") Delta::abs_method(); // doesn't work + +%inline %{ + + struct Alpha + { + virtual ~Alpha() { }; + virtual const char* abs_method() = 0; + }; + + struct Bravo : Alpha + { + const char* abs_method() + { + return "Bravo::abs_method()"; + } + }; + + struct Charlie : Bravo + { + const char* abs_method() + { + return "Charlie::abs_method()"; + } + }; + + struct Delta : Charlie + { + }; +%} |