/* 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>; | |