| %module(directors="1", allprotected="1") nested_directors |
| |
| %warnfilter(SWIGWARN_PARSE_NAMED_NESTED_CLASS) NN::Base::Nest; |
| %warnfilter(SWIGWARN_PARSE_NAMED_NESTED_CLASS) NN::Sub::IListener; |
| |
| %feature("director") Base; |
| %feature("director") Sub; |
| %feature("director") Base::Nest; |
| |
| %inline %{ |
| namespace NN { |
| class Base { |
| public: |
| virtual ~Base(){} |
| class Nest { |
| public: |
| virtual ~Nest(){} |
| virtual bool GetValue(){ return false; } |
| }; |
| protected: |
| virtual bool DoNothing() = 0; |
| }; |
| |
| class Sub : public Base { |
| public: |
| class IListener { |
| }; |
| public: |
| virtual ~Sub(){} |
| protected: |
| void DoSomething(){} |
| virtual bool GetValue() const { return true; } |
| }; |
| } |
| %} |