| %module(directors="1") director_enum |
| |
| %warnfilter(SWIGWARN_RUBY_WRONG_NAME) EnumDirector::hi; /* Ruby, wrong constant name */ |
| %warnfilter(SWIGWARN_RUBY_WRONG_NAME) EnumDirector::hello; /* Ruby, wrong constant name */ |
| %warnfilter(SWIGWARN_RUBY_WRONG_NAME) EnumDirector::yo; /* Ruby, wrong constant name */ |
| %warnfilter(SWIGWARN_RUBY_WRONG_NAME) EnumDirector::awright; /* Ruby, wrong constant name */ |
| %warnfilter(SWIGWARN_RUBY_WRONG_NAME) EnumDirector::Foo::ciao; /* Ruby, wrong constant name */ |
| %warnfilter(SWIGWARN_RUBY_WRONG_NAME) EnumDirector::Foo::aufwiedersehen; /* Ruby, wrong constant name */ |
| %warnfilter(SWIGWARN_RUBY_WRONG_NAME) EnumDirector::Foo::adios; /* Ruby, wrong constant name */ |
| %warnfilter(SWIGWARN_TYPEMAP_THREAD_UNSAFE, |
| SWIGWARN_TYPEMAP_DIRECTOROUT_PTR) EnumDirector::Foo; /* Thread/reentrant unsafe wrapping, consider returning by value instead. */ |
| |
| |
| |
| %feature("director") Foo; |
| |
| %rename(Hallo) EnumDirector::Hello; |
| |
| %inline %{ |
| namespace EnumDirector { |
| struct A; |
| |
| enum Hello { |
| hi, hello, yo, awright = 10 |
| }; |
| |
| class Foo { |
| public: |
| enum Bye { |
| ciao, aufwiedersehen = 100, adios |
| }; |
| virtual ~Foo() {} |
| virtual Hello say_hi(Hello h){ return h;} |
| virtual Hello say_hello(Hello){ return hello;} |
| virtual Hello say_hi(A *a){ return hi;} |
| virtual Bye say_bye(Bye b){ return b;} |
| virtual const Hello & say_hi_ref(const Hello & h){ return h;} |
| |
| Hello ping(Hello h){ return say_hi(h);} |
| const Hello & ping_ref(const Hello &h){ return say_hi_ref(h);} |
| Bye ping_member_enum(Bye b){ return say_bye(b);} |
| |
| }; |
| } |
| %} |
| |
| %feature("director"); |
| |
| %inline %{ |
| namespace EnumDirector { |
| enum FType{ SA = -1, NA_=0, EA=1}; |
| |
| struct A{ |
| A(const double a, const double b, const FType c) |
| {} |
| |
| virtual ~A() {} |
| |
| virtual int f(int i=0) {return i;} |
| }; |
| |
| struct B : public A{ |
| B(const double a, const double b, const FType c) |
| : A(a, b, c) |
| {} |
| }; |
| } |
| %} |
| |
| |
| %inline %{ |
| namespace EnumDirector { |
| struct A2{ |
| A2(const FType c = NA_) {} |
| |
| virtual ~A2() {} |
| |
| virtual int f(int i=0) {return i;} |
| }; |
| |
| struct B2 : public A2{ |
| B2(const FType c) : A2(c) {} |
| }; |
| } |
| |
| %} |