%module template_rename %warnfilter(SWIGWARN_RUBY_WRONG_NAME) Foo<int>; /* Ruby, wrong class name */ %warnfilter(SWIGWARN_RUBY_WRONG_NAME) Foo<double>; /* Ruby, wrong class name */ %rename(blah_test) Foo::blah(int); %rename(spam_test) Foo<int>::spam(int); %rename(grok_test) Foo::grok(int); %rename(groki_test) Foo<int>::grok(int); %inline %{ template<class T> class Foo { public: int blah(int x) { return x; } int spam(int x) { return x; } int grok(int x) { return x; } }; %} %template(iFoo) Foo<int>; %template(dFoo) Foo<double>; // Testing ignore %ignore std::tvector<Flow>::tvector(size_type); %inline %{ namespace std { template<class T> class tvector { public: typedef size_t size_type; tvector() {} tvector(size_type n) { T t = T(); } }; } class Flow { Flow() {} public: Flow(double d) {} }; %} %template(VectFlow) std::tvector<Flow>;
Generated by dwww version 1.15 on Tue Jul 2 00:22:49 CEST 2024.