| %module(ruby_minherit="1") using_composition | |
| %warnfilter(SWIGWARN_JAVA_MULTIPLE_INHERITANCE, | |
| SWIGWARN_CSHARP_MULTIPLE_INHERITANCE, | |
| SWIGWARN_D_MULTIPLE_INHERITANCE, | |
| SWIGWARN_PHP_MULTIPLE_INHERITANCE) FooBar; // C#, D, Java, PHP multiple inheritance | |
| %warnfilter(SWIGWARN_JAVA_MULTIPLE_INHERITANCE, | |
| SWIGWARN_CSHARP_MULTIPLE_INHERITANCE, | |
| SWIGWARN_D_MULTIPLE_INHERITANCE, | |
| SWIGWARN_PHP_MULTIPLE_INHERITANCE) FooBar2; // C#, D, Java, PHP multiple inheritance | |
| %warnfilter(SWIGWARN_JAVA_MULTIPLE_INHERITANCE, | |
| SWIGWARN_CSHARP_MULTIPLE_INHERITANCE, | |
| SWIGWARN_D_MULTIPLE_INHERITANCE, | |
| SWIGWARN_PHP_MULTIPLE_INHERITANCE) FooBar3; // C#, D, Java, PHP multiple inheritance | |
| #ifdef SWIGLUA // lua only has one numeric type, so some overloads shadow each other creating warnings | |
| %warnfilter(SWIGWARN_LANG_OVERLOAD_SHADOW) blah; | |
| #endif | |
| %inline %{ | |
| class Foo { | |
| public: | |
| int blah(int x) { return x; } | |
| char *blah(char *x) { return x; } | |
| }; | |
| class Bar { | |
| public: | |
| double blah(double x) { return x; } | |
| }; | |
| class FooBar : public Foo, public Bar { | |
| public: | |
| using Foo::blah; | |
| using Bar::blah; | |
| char *blah(char *x) { return x; } | |
| }; | |
| class FooBar2 : public Foo, public Bar { | |
| public: | |
| char *blah(char *x) { return x; } | |
| using Foo::blah; | |
| using Bar::blah; | |
| }; | |
| class FooBar3 : public Foo, public Bar { | |
| public: | |
| using Foo::blah; | |
| char *blah(char *x) { return x; } | |
| using Bar::blah; | |
| }; | |
| %} |