CHANGES.current

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@6637 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Marcelo Matus 2004-11-03 01:09:36 +00:00
commit 2a9bdaaf3b

View file

@ -1,6 +1,44 @@
Version 1.3.23 (November 6, 2004)
=================================
10/2/2004: mmatus
- More fixes for namespace + class declarations.
As an extra bonus, we get %template support for static/members class
methods, ie, now you can say:
namespace space {
struct A
{
template <class Y>
static void fooT(Y y) { }
};
}
struct B
{
template <class Y>
void barT(Y y) {}
};
%template(foo) space::A::fooT<double>;
%template(foo) space::A::fooT<int>;
%template(foo) space::A::fooT<char>;
%template(foo) B::barT<double>;
%template(foo) B::barT<int>;
%template(foo) B::barT<char>;
and call
A.foo(1)
b = B()
b.bar(1)
note the the methods are emitted inside the classes,
and hence, the %template name refers to the 'member'
method name, not a global namespace name.
10/31/2004: mmatus
- Solve namespace + class declarations, as in