/trunk/Examples/test-suite/evil_diamond.i

# · Swig · 27 lines · 19 code · 8 blank · 0 comment · 0 complexity · 525eda92854f4b902967f2dbff992bbc MD5 · raw file

  1. %module(ruby_minherit="1") evil_diamond
  2. %warnfilter(SWIGWARN_RUBY_WRONG_NAME) foo; // Ruby, wrong class name
  3. %warnfilter(SWIGWARN_RUBY_WRONG_NAME) bar; // Ruby, wrong class name
  4. %warnfilter(SWIGWARN_RUBY_WRONG_NAME) baz; // Ruby, wrong class name
  5. %warnfilter(SWIGWARN_RUBY_WRONG_NAME,
  6. SWIGWARN_JAVA_MULTIPLE_INHERITANCE,
  7. SWIGWARN_CSHARP_MULTIPLE_INHERITANCE,
  8. SWIGWARN_D_MULTIPLE_INHERITANCE,
  9. SWIGWARN_PHP_MULTIPLE_INHERITANCE) spam; // Ruby, wrong class name - C#, D & Java, PHP multiple inheritance
  10. %inline %{
  11. class foo { };
  12. class bar : public foo {
  13. };
  14. class baz : public foo {
  15. };
  16. class spam : public bar, public baz {
  17. };
  18. foo *test(foo *f) { return f; }
  19. %}