templated functions in a namespace tests added

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6451 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
William S Fulton 2004-10-20 21:03:02 +00:00
commit a4338dad2d

View file

@ -126,3 +126,20 @@ class Klass {};
%template(overload) overload<Klass>;
%template(overload) overload<double>;
// everything put in a namespace
%inline %{
namespace space {
int nsoverload(const char *c) { return 1000; }
template<typename T> int nsoverload(T t) { return 1010; }
template<typename T> int nsoverload(T t, const T &tref) { return 1020; }
template<typename T> int nsoverload(T t, const char *c) { return 1030; }
template<> int nsoverload<double>(double t, const char *c) { return 1040; }
int nsoverload() { return 1050; }
}
%}
%template(nsoverload) space::nsoverload<int>;
%template(nsoverload) space::nsoverload<Klass>;
%template(nsoverload) space::nsoverload<double>;