Files
cpp-thirdparty/winx64/bin/swig-3.0.12/Examples/test-suite/virtual_vs_nonvirtual_base.i
Bassem Girgis 81b4b9e273 Initial commit
2018-12-20 17:34:07 -06:00

51 lines
876 B
OpenEdge ABL

%module virtual_vs_nonvirtual_base;
// Regression test for SF#3124665.
%inline {
class SimpleVirtual
{
public:
virtual int implementMe() = 0;
virtual ~SimpleVirtual() {}
};
class SimpleNonVirtual
{
public:
int dummy() { return 0; }
virtual ~SimpleNonVirtual() {}
};
class SimpleReturnClass
{
public:
SimpleReturnClass(int i) : value(i) {};
int get() const { return value; }
private:
int value;
};
class SimpleClassFail : public SimpleVirtual
{
public:
SimpleClassFail() : inner(10) {}
SimpleReturnClass getInner() { return inner; }
virtual int implementMe() { return 0; }
private:
SimpleReturnClass inner;
};
class SimpleClassWork : public SimpleNonVirtual
{
public:
SimpleClassWork() : inner(10) {}
SimpleReturnClass getInner() { return inner; }
virtual int implementMe() { return 0; }
private:
SimpleReturnClass inner;
};
}