mirror of https://github.com/swig/swig
29 lines
402 B
OpenEdge ABL
29 lines
402 B
OpenEdge ABL
%module member_template
|
|
|
|
%{
|
|
#ifdef max
|
|
#undef max
|
|
#endif
|
|
%}
|
|
|
|
|
|
|
|
%inline %{
|
|
template<class T> T max(T x, T y, T z) { return (x > y) ? x : y; }
|
|
|
|
template<class T> class Foo {
|
|
public:
|
|
template<class S> S max(S x, S y) { return (x > y) ? x : y; }
|
|
};
|
|
|
|
%}
|
|
|
|
%extend Foo {
|
|
%template(maxi) max<int>;
|
|
%template(maxd) max<double>;
|
|
};
|
|
|
|
%template(Fooint) Foo<int>;
|
|
%template(Foodouble) Foo<double>;
|
|
|