/trunk/Examples/test-suite/director_overload.i
Swig | 47 lines | 39 code | 8 blank | 0 comment | 0 complexity | 59887d1524df8250e0b1cfb08b5548ee MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
- %module(directors="1") director_overload
- %feature("director");
- #ifdef SWIGPYTHON
- %feature("director:except") {
- if ($error != NULL) {
- throw Swig::DirectorMethodException();
- }
- }
- #endif
- #ifdef SWIGRUBY
- // Catch ruby exceptions in directors
- %feature("director:except") {
- throw Swig::DirectorMethodException($error);
- }
- #endif
- %inline %{
- class OverloadedClass
- {
- public:
- virtual ~OverloadedClass() {}
- virtual void method1() const {}
- virtual void method2() const {}
- virtual void method3() const {}
- // test overloaded method, but not directly after the first method
- virtual void method2(bool b) const {}
- };
- class OverloadedPointers
- {
- public:
- virtual ~OverloadedPointers() {}
- virtual void method(int *p) const {}
- virtual void method(double *p) const {}
- virtual void method(bool &r) const {}
- virtual void method(short &r) const {}
- virtual void method(OverloadedClass *p) const {}
- virtual void method(OverloadedPointers *p) const {}
- virtual void notover(int *p) const {}
- };
- %}