CHANGES.current
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@6820 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
d0fad62e2c
commit
6843fc6ccd
3 changed files with 72 additions and 1 deletions
|
|
@ -1,6 +1,76 @@
|
|||
Version 1.3.23 (working version)
|
||||
=================================
|
||||
|
||||
12/01/2004: mmatus
|
||||
- Fix typemaps to work with templates and default template
|
||||
args, ie
|
||||
|
||||
template <class A, class B = int>
|
||||
struct Foo {
|
||||
};
|
||||
|
||||
%typemap(in) Foo<int> *{...}
|
||||
%typemap(out) Foo<int,int> *{...}
|
||||
|
||||
Foo<int> * foo( Foo<int> *f1, Foo<int,int> *f2);
|
||||
|
||||
now 'f1', 'f2' and the return value resolve the provided
|
||||
typemaps properly.
|
||||
|
||||
This is highly needed for proper STL support, see new
|
||||
std_basic_string.i, std_sstream.i, etc.
|
||||
|
||||
- Added std_sstream.i, and fix std_basic_string.i to use
|
||||
the new typemaps + template def. arg mechanism. Also,
|
||||
added the needed std_alloc.i. Now, all the containers
|
||||
can be modified to support std::allocator, like in:
|
||||
|
||||
template<class T, class A = std::allocator<T > >
|
||||
class vector {
|
||||
public:
|
||||
....
|
||||
};
|
||||
|
||||
This change is only completed by now for basic_string.
|
||||
|
||||
- Fix for smart pointers + members + extensions:
|
||||
|
||||
%extend Foo {
|
||||
int extension(int i, int j) { return i; }
|
||||
int extension() { return 1; }
|
||||
}
|
||||
|
||||
%inline %{
|
||||
|
||||
class Foo {
|
||||
public:
|
||||
int y;
|
||||
static const int z;
|
||||
};
|
||||
|
||||
class Bar {
|
||||
Foo *f;
|
||||
public:
|
||||
Bar(Foo *f) : f(f) { }
|
||||
Foo *operator->() {
|
||||
return f;
|
||||
}
|
||||
};
|
||||
|
||||
now you can
|
||||
|
||||
f = Foo()
|
||||
f.y = 3
|
||||
a = f.z
|
||||
f->extension()
|
||||
|
||||
b = Bar(f)
|
||||
b.y = 3
|
||||
a = b.z
|
||||
b->extension()
|
||||
|
||||
- Other small errors fixes, mostly python.
|
||||
|
||||
11/25/2004: wsfulton
|
||||
[Java] Numerous director bug fixes so that the correct java types
|
||||
and canonicalized types in the JNI code are emitted. Use of the
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
TOP = ../..
|
||||
SWIG = $(TOP)/../swig
|
||||
SWIG = $(TOP)/../preinst-swig
|
||||
CXXSRCS = example.cxx
|
||||
TARGET = example
|
||||
INTERFACE = example.i
|
||||
|
|
|
|||
|
|
@ -408,3 +408,4 @@ wrapmacro_runme.py
|
|||
li_std_stream.py
|
||||
swigobject.py
|
||||
smart_pointer_member.py
|
||||
cpp_broken.py namespace_union.py overload_complicated.py
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue