| %module csharp_features | |
| %include "wchar.i" | |
| // SWIG gets the method modifiers wrong occasionally, like with private inheritance, %csmethodmodifiers can fix this | |
| %csmethodmodifiers Derived::VirtualMethod() "public virtual" | |
| %csmethodmodifiers MoreDerived::variable "public new" | |
| %inline %{ | |
| class Base { | |
| public: | |
| virtual ~Base() {} | |
| virtual void VirtualMethod() {} | |
| }; | |
| class Derived : private Base { | |
| public: | |
| virtual ~Derived() {} | |
| virtual void VirtualMethod() {} | |
| int variable; | |
| }; | |
| class MoreDerived : public Derived { | |
| public: | |
| int variable; | |
| // test wide char literals support for C# module | |
| void methodWithDefault1(const wchar_t* s = L"literal with escapes \x1234"){} | |
| void methodWithDefault2(wchar_t c = L'\x1234'){} | |
| }; | |
| %} | |