/trunk/Examples/test-suite/enum_template.i
Swig | 43 lines | 18 code | 8 blank | 17 comment | 0 complexity | 717c2021734d5bc9af050d1ae151ce34 MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
- %module enum_template
- %warnfilter(SWIGWARN_RUBY_WRONG_NAME) eTest0; /* Ruby, wrong class name */
- %warnfilter(SWIGWARN_RUBY_WRONG_NAME) eTest1; /* Ruby, wrong class name */
- %warnfilter(SWIGWARN_RUBY_WRONG_NAME) eTest2; /* Ruby, wrong class name */
- /*
- From bug report 992329:
- In Python I see
- >>> import enum_template
- >>> enum_template.MakeETest()
- '_60561408_p_ETest'
- >>> enum_template.TakeETest(0)
- Traceback (most recent call last):
- File "<stdin>", line 1, in ?
- TypeError: Expected a pointer
- Without the %template, things work fine: the first
- function call returns an integer, and the second
- succeeds.
- */
- %inline %{
- enum ETest
- {
- eTest0,
- eTest1,
- eTest2
- };
- void TakeETest(ETest test) {}
- ETest MakeETest(void) {return eTest1;}
- template<class T> class CTempl
- {
- };
- %}
- %template(CTempl_ETest) CTempl<ETest>;