mirror of https://github.com/swig/swig
25 lines
463 B
OpenEdge ABL
25 lines
463 B
OpenEdge ABL
%module smart_pointer_overload
|
|
|
|
#ifdef SWIGLUA // lua only has one numeric type, so some overloads shadow each other creating warnings
|
|
%warnfilter(SWIGWARN_LANG_OVERLOAD_SHADOW) test;
|
|
#endif
|
|
|
|
%inline %{
|
|
struct Foo {
|
|
int x;
|
|
int test(int y) { y = 0; return 1; }
|
|
int test(double y) { y = 0; return 2; }
|
|
int test(char *s) { s = 0; return 3; }
|
|
};
|
|
|
|
class Bar {
|
|
Foo *f;
|
|
public:
|
|
Bar(Foo *f) : f(f) { }
|
|
Foo *operator->() {
|
|
return f;
|
|
}
|
|
};
|
|
%}
|
|
|