| %module using_pointers |
| |
| #ifdef SWIGCSHARP |
| %csmethodmodifiers x "public new" |
| #endif |
| |
| %{ |
| #if defined(_MSC_VER) |
| #pragma warning(disable: 4290) // C++ exception specification ignored except to indicate a function is not __declspec(nothrow) |
| #endif |
| %} |
| |
| %inline %{ |
| class Foo { |
| public: |
| int x; |
| virtual ~Foo() { } |
| virtual Foo* blah() { return this; } |
| virtual Foo* exception_spec(int what_to_throw) throw (int, const char *) { |
| int num = 10; |
| const char *str = "exception message"; |
| if (what_to_throw == 1) throw num; |
| else if (what_to_throw == 2) throw str; |
| return 0; |
| } |
| }; |
| |
| class FooBar : public Foo { |
| public: |
| using Foo::blah; |
| using Foo::x; |
| using Foo::exception_spec; |
| }; |
| |
| %} |
| |