git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5873 626c5289-ae23-0410-ae9c-e8d60b6d4f22
33 lines
395 B
OpenEdge ABL
33 lines
395 B
OpenEdge ABL
%module smart_pointer_protected
|
|
|
|
%inline %{
|
|
|
|
namespace hi
|
|
{
|
|
struct A
|
|
{
|
|
virtual ~A() { }
|
|
virtual int value(A*) = 0;
|
|
int index;
|
|
};
|
|
|
|
struct B : A
|
|
{
|
|
protected:
|
|
int value(A*)
|
|
{
|
|
return 1;
|
|
}
|
|
};
|
|
|
|
struct C
|
|
{
|
|
hi::B* operator->() const { return new hi::B(); }
|
|
private:
|
|
int index;
|
|
};
|
|
}
|
|
|
|
|
|
%}
|
|
|