Upstream version 1.3.40
[profile/ivi/swig.git] / Examples / test-suite / evil_diamond_ns.i
1 %module(ruby_minherit="1") evil_diamond_ns
2
3 %warnfilter(SWIGWARN_RUBY_WRONG_NAME) Blah::foo;                // Ruby, wrong class name
4 %warnfilter(SWIGWARN_RUBY_WRONG_NAME) Blah::bar;                // Ruby, wrong class name
5 %warnfilter(SWIGWARN_RUBY_WRONG_NAME) Blah::baz;                // Ruby, wrong class name
6 %warnfilter(SWIGWARN_RUBY_WRONG_NAME,
7             SWIGWARN_JAVA_MULTIPLE_INHERITANCE,
8             SWIGWARN_CSHARP_MULTIPLE_INHERITANCE,
9             SWIGWARN_PHP_MULTIPLE_INHERITANCE) Blah::spam;      // Ruby, wrong class name - C# & Java, PHP multiple inheritance
10
11 %inline %{
12 namespace Blah {
13 class foo { };
14
15 class bar : public foo {
16 };
17
18 class baz : public foo {
19 };
20
21 class spam : public bar, public baz {
22 };
23
24 foo *test(foo *f) { return f; }
25 }
26 %}
27