Conflicts: .project COPYRIGHT Doc/Manual/style.css Examples/Makefile.in Examples/test-suite/common.mk Lib/typemaps/strings.swg Makefile.in Source/DOH/fio.c Source/Makefile.am Source/Modules/emit.cxx Source/Modules/javascript.cxx configure.in git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/branches/oliverb-javascript-v8@13764 626c5289-ae23-0410-ae9c-e8d60b6d4f22
25 lines
439 B
OpenEdge ABL
25 lines
439 B
OpenEdge ABL
/* File : example.i */
|
|
%module example
|
|
|
|
|
|
%inline %{
|
|
// From B. Strousjoup, "The C++ Programming Language, Third Edition", p. 514
|
|
template<class T> class Sum {
|
|
T res;
|
|
public:
|
|
Sum(T i = 0) : res(i) { }
|
|
void operator() (T x) { res += x; }
|
|
T result() const { return res; }
|
|
};
|
|
|
|
%}
|
|
|
|
%rename(call) *::operator(); // the fn call operator
|
|
|
|
// Instantiate a few versions
|
|
%template(intSum) Sum<int>;
|
|
%template(doubleSum) Sum<double>;
|
|
|
|
|
|
|
|
|