%module(directors="1") director_finalizer | |
%{ | |
int status = 0; | |
class Foo { | |
public: | |
virtual ~Foo() { orStatus(1); } | |
virtual void orStatus(int x) { status |= x; } | |
}; | |
void deleteFoo(Foo *f) { | |
delete f; | |
} | |
Foo *launder(Foo *f) { | |
return f; | |
} | |
int getStatus() { | |
return status; | |
} | |
void resetStatus() { | |
status = 0; | |
} | |
%} | |
%feature("director") Foo; | |
class Foo { | |
public: | |
virtual ~Foo(); | |
virtual void orStatus(int x); | |
}; | |
void deleteFoo(Foo *f); | |
int getStatus(); | |
Foo *launder(Foo *f); | |
void resetStatus(); | |