New test to test directors and templates (from Scott Michel)
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5117 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
aa1263cb91
commit
4dbee23fda
2 changed files with 37 additions and 0 deletions
|
|
@ -108,6 +108,7 @@ CPP_TEST_CASES += \
|
||||||
director_exception \
|
director_exception \
|
||||||
director_finalizer \
|
director_finalizer \
|
||||||
director_unroll \
|
director_unroll \
|
||||||
|
director_wombat \
|
||||||
dynamic_cast \
|
dynamic_cast \
|
||||||
enum_plus \
|
enum_plus \
|
||||||
enum_scope \
|
enum_scope \
|
||||||
|
|
|
||||||
36
Examples/test-suite/director_wombat.i
Normal file
36
Examples/test-suite/director_wombat.i
Normal file
|
|
@ -0,0 +1,36 @@
|
||||||
|
%module(directors="1") director_wombat
|
||||||
|
|
||||||
|
%feature(director) Bar;
|
||||||
|
%feature(director) Foo<int>;
|
||||||
|
|
||||||
|
%inline %{
|
||||||
|
template<typename T> class Foo
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
Foo()
|
||||||
|
{ /* NOP */ }
|
||||||
|
virtual ~Foo()
|
||||||
|
{ /* NOP */ }
|
||||||
|
virtual int meth(T param) { return param; }
|
||||||
|
};
|
||||||
|
|
||||||
|
typedef Foo<int> Foo_int;
|
||||||
|
|
||||||
|
class Bar
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
virtual ~Bar();
|
||||||
|
virtual Foo_int *meth();
|
||||||
|
};
|
||||||
|
|
||||||
|
Bar::~Bar()
|
||||||
|
{ /* NOP */ }
|
||||||
|
|
||||||
|
Foo_int *
|
||||||
|
Bar::meth()
|
||||||
|
{
|
||||||
|
return new Foo_int();
|
||||||
|
}
|
||||||
|
%}
|
||||||
|
|
||||||
|
%template(Foo_integers) Foo<int>;
|
||||||
Loading…
Add table
Add a link
Reference in a new issue