1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174
|
New Features in SWIG 1.1
------------------------
1. %apply directive added to apply typemaps to new datatypes.
2. %clear directive added (opposite of %apply).
3. -co option added. This will extract a file from the SWIG
library and place it in the current directory. For example :
swig -tcl -co wish.i
4. %checkout directive added. Does the same thing as -co, but
can be placed in an interface file.
5. %echo directive added. Allows an interface file to print a
warning/diagnostic message.
6. SWIG will now look in the SWIG library for files before
reporting 'file not found.' This makes it extremely easy
to wrap library files.
7. Most of the examples have now been compiled under Windows NT.
8. pointer.i library added. Provides high-level access to C pointers.
9. exception.i library added. Provides language-independent
exception handling.
10. constraint.i library added. Allows you to apply constraints to
various function arguments.
11. typemaps.i library added. Provides a collection of common
typemaps for managing pointer arguments and other objects.
12. %new directive added. This gives SWIG a hint that a function is
returning a new object.
13. "check" typemap added to allow constraint programming.
New Features in SWIG 1.1b5
--------------------------
1. Pointer type-checking performance for C++ derived classes has
been improved dramatically.
2. User-definable exception handling mechanism added using the
%except directive.
3. %import directive has been added to provide better handling
of multiple files.
4. -l command line option added to make it easier to build special
configurations. For example :
swig -tcl -lwish.i interface.i
Builds a wish executable with the functions in interface.i
5. Better support for multi-dimensional arrays.
6. Improved typemap support for arrays.
7. Support for Activeware Perl for Win32 added.
8. Better support for Win95 and WinNT platforms added. Tcl, Perl, and
Python modules should now all be compatible.
9. Preliminary work on a Macintosh port.
10. Tons of bug fixes. See the CHANGES file.
New Features in SWIG 1.1b3/1.1b4
--------------------------------
1. Multiple inheritance supported.
2. Default/optional arguments now supported.
3. %inline %{ %} directive simplifies process of
adding helper functions.
%inline %{
int foobar() {
printf("Hello world\n");
}
%}
is the same as the following :
%{
int foobar() {
printf("Hello world\n");
}
%}
int foobar();
4. Typemap support added via the %typemap() directive.
5. Updated configuration script with more options.
6. Output arguments added (via typemaps).
7. Nested structure declarations now supported. For example :
struct foo {
int type;
union {
int ivalue;
float fvalue;
double dvalue;
} rep;
};
8. %addmethods directive modified to work outside of a class
definition. For example :
%addmethods ClassFoo {
int new_method() {
...
};
int new_method2() {
...
};
}
This will attach two new methods to the class ClassFoo when
encountered.
New Features in SWIG 1.1b2
--------------------------
1. Documentation system has been completely rewritten
(see the file Doc/doc.ps)
New Features in SWIG 1.1b1
--------------------------
1. %{, %} block (which was required in SWIG 1.0) is now optional.
This means that interface files like this are legal :
%module foobar
int foo(double);
double bar(int);
... etc ...
2. New %extern directive provides better support for multiple
files. Use it like %include. For example :
%extern types.i
This directive only grabs type/class information out of a
file. This is useful if you have a module that depends
on a common collection of types or baseclasses.
3. Perl5 shadow classes
(See the Examples/perl5 directory for more information.)
4. Any declaration declared as 'static' is now ignored.
5. C preprocessor directives have been improved and rewritten.
6. Fixed a few parsing errors.
7. Parser is somewhat more memory efficient.
8. Some bugs in the Python module fixed.
|