web-page updates
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@2888 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
a0485365aa
commit
74a6455693
3 changed files with 1589 additions and 42 deletions
25
NEW
25
NEW
|
|
@ -2,7 +2,7 @@ New Features and Important Changes, v1.3
|
|||
|
||||
Author(s) : David Beazley
|
||||
|
||||
January 31, 2002
|
||||
June 2, 2002
|
||||
|
||||
1. Introduction
|
||||
---------------
|
||||
|
|
@ -92,6 +92,11 @@ altered SWIG's old behavior.
|
|||
where you would like to make the two arguments operate as a single
|
||||
object in the target language.
|
||||
|
||||
2.9 Types such as 'const int &', 'const double &', are passed as
|
||||
values instead of pointers.
|
||||
|
||||
2.10 C++ namespaces are now supported.
|
||||
|
||||
3. Type checking
|
||||
----------------
|
||||
|
||||
|
|
@ -117,26 +122,28 @@ typemaps to handle pointers, here are the essential details:
|
|||
|
||||
3.3 Instead of SWIG_GetPtr, a function of the following form is used:
|
||||
|
||||
int SWIG_ConvertPtr(ScriptObj *o, void **ptr, swig_type_info *ty);
|
||||
int SWIG_ConvertPtr(ScriptObj *o, void **ptr, swig_type_info *ty, int flags);
|
||||
|
||||
Note: the function name may differ in certain implementations (read
|
||||
the source). For example:
|
||||
|
||||
int SWIG_ConvertPtr(ScriptObj *o, void **ptr, SWIGTYPE_p_p_int);
|
||||
int SWIG_ConvertPtr(ScriptObj *o, void **ptr, SWIGTYPE_p_p_int,0);
|
||||
|
||||
Passing a value of '0' for the type will accept any pointer. This
|
||||
works kind of like 'void *'.
|
||||
works kind of like 'void *'. The flags argument is reserved for
|
||||
future expansion.
|
||||
|
||||
3.4. To create a pointer object, one uses a function similar to
|
||||
|
||||
ScriptObj *SWIG_NewPointer(void *ptr, swig_type_info *ty);
|
||||
ScriptObj *SWIG_NewPointer(void *ptr, swig_type_info *ty, int flags);
|
||||
|
||||
It works in a similar manner:
|
||||
|
||||
p = SWIG_NewPointer(ptr, SWIGTYPE_p_p_int);
|
||||
p = SWIG_NewPointer(ptr, SWIGTYPE_p_p_int, 0);
|
||||
|
||||
You will have to read the source to get the exact function name
|
||||
used.
|
||||
used. The flags argument is implementation specific and reserved
|
||||
for future expansion.
|
||||
|
||||
3.5. If, for whatever reason, you need to obtain the 'swig_type_info *'
|
||||
outside the context of a wrapper file, you can use the
|
||||
|
|
@ -191,6 +198,10 @@ and it is simpler to implement than the old string based approach.
|
|||
|
||||
4.6 %except and %new are deprecated.
|
||||
|
||||
4.7 %readonly and %readwrite are deprecated. Use %immutable instead.
|
||||
|
||||
4.8 The %addmethods directive has been renamed to %extend.
|
||||
|
||||
5. Language specific changes
|
||||
----------------------------
|
||||
|
||||
|
|
|
|||
47
README
47
README
|
|
@ -1,6 +1,6 @@
|
|||
SWIG (Simplified Wrapper and Interface Generator)
|
||||
|
||||
Version: 1.3.11 (February 1, 2002)
|
||||
Version: 1.3.12 (June 2, 2002)
|
||||
|
||||
$Header$
|
||||
|
||||
|
|
@ -17,7 +17,7 @@ This distribution represents the latest development release of SWIG,
|
|||
aiming to replace versions 1.1p5 and 1.1-883. The guilty parties
|
||||
working on this are:
|
||||
|
||||
Dave Beazley (beazley@cs.uchicago.edu) (SWIG core)
|
||||
Dave Beazley (beazley@cs.uchicago.edu) (SWIG core, Python, Tcl, Perl)
|
||||
William Fulton (wsf@fultondesigns.co.uk) (Java)
|
||||
Matthias Köppe (mkoeppe@mail.math.uni-magdeburg.de) (Guile/MzScheme)
|
||||
Loic Dachary (loic@ceic.com) (Perl5)
|
||||
|
|
@ -27,6 +27,7 @@ working on this are:
|
|||
Masaki Fukushima (fukusima@goto.info.waseda.ac.jp) (Ruby)
|
||||
Richard Palmer (richard@magicality.org) (PHP)
|
||||
Luigi Ballabio (ballabio@mac.com) (Macintosh port)
|
||||
Sam Liddicott (saml@liddicott.com) (PHP)
|
||||
|
||||
Past contributors include:
|
||||
|
||||
|
|
@ -56,9 +57,12 @@ What's New?
|
|||
===========
|
||||
The most notable changes since SWIG1.1 include the following:
|
||||
|
||||
- Support for C++ namespaces
|
||||
|
||||
- Support for C++ overloaded operators.
|
||||
|
||||
- Support for C++ templates.
|
||||
- Support for C++ templates including member templates,
|
||||
specialization, and partial specialization.
|
||||
|
||||
- Improved support for overloaded functions/methods.
|
||||
|
||||
|
|
@ -69,7 +73,8 @@ The most notable changes since SWIG1.1 include the following:
|
|||
|
||||
- Improved support for pointers to functions and callbacks.
|
||||
|
||||
- SWIG now has a full C preprocessor.
|
||||
- SWIG now has a full C preprocessor with macro expansion.
|
||||
Includes C99 variadic macro support.
|
||||
|
||||
- Code generation for the Tcl and Python modules has been
|
||||
substantially improved both in terms of size and runtime
|
||||
|
|
@ -123,8 +128,8 @@ if you are making extensive use of advanced SWIG features, interfaces
|
|||
written for SWIG1.1 may not work. We apologize for the inconvenience,
|
||||
but these changes are needed in order to fix a number of annoying
|
||||
"features" in SWIG1.1. Hopefully the list of new features will
|
||||
provide enough incentive for you to upgrade (and that the modifications
|
||||
to your interfaces will only be minor).
|
||||
provide enough incentive for you to upgrade (and that the
|
||||
modifications to your interfaces will only be minor).
|
||||
|
||||
In addition, SWIG1.3 makes no attempt to be compatible with SWIG1.1 at
|
||||
the C++ API level so language modules written for SWIG1.1 will most
|
||||
|
|
@ -148,7 +153,8 @@ To build and install SWIG, simply type the following:
|
|||
|
||||
% ./configure
|
||||
% make
|
||||
% make -k check # this step is optional (see note below)
|
||||
% make runtime # Optional (See note 4 below)
|
||||
% make -k check # This step is optional (see note 3 below)
|
||||
% make install
|
||||
|
||||
By default SWIG installs itself in /usr/local. If you need to install SWIG in
|
||||
|
|
@ -157,6 +163,7 @@ to ./configure. For example:
|
|||
|
||||
% ./configure --prefix=/home/yourname/projects
|
||||
% make
|
||||
% make runtime
|
||||
% make -k check
|
||||
% make install
|
||||
|
||||
|
|
@ -197,6 +204,18 @@ Notes:
|
|||
that we're trying to resolve. Chances are that SWIG will work just fine
|
||||
for you.
|
||||
|
||||
Note: SWIG's support for C++ is sufficiently advanced that certain
|
||||
tests may fail on older C++ compilers (for instance if your compiler
|
||||
does not support member templates). These errors are harmless if you
|
||||
don't intend to use these features in your own programs.
|
||||
|
||||
(4) The 'make runtime' target builds the SWIG runtime libraries. These
|
||||
are needed if you plan to build applications that might involve more
|
||||
than one SWIG generated module. This step requires that shared libraries
|
||||
be properly configured on your machine and it may not work on all
|
||||
platforms. If this step fails, SWIG will still work, but multi-module
|
||||
support will be broken. Please let us know if this fails on your platform.
|
||||
|
||||
Examples
|
||||
========
|
||||
The Examples directory contains a variety of examples of using SWIG
|
||||
|
|
@ -241,10 +260,10 @@ http://swig.cs.uchicago.edu/cgi-bin/wiki.pl.
|
|||
Documentation
|
||||
=============
|
||||
The Doc/Manual directory contains the most recent set of updated
|
||||
documentation for this release. As this is an unstable development
|
||||
release, the documentation is not entirely up to date and is being worked
|
||||
on. We are working on it, but there is a lot of documentation and it
|
||||
is going to take time to complete. Please be patient.
|
||||
documentation for this release. As this is a development release, the
|
||||
documentation is not entirely up to date and is being worked on. We
|
||||
are working on it, but there is a lot of old documentation and it is going
|
||||
to take time to complete. Please be patient or volunteer to help.
|
||||
|
||||
!! The most up-to-date information concerning new features in SWIG1.3 is the
|
||||
!! file Doc/Manual/SWIG.html.
|
||||
|
|
@ -257,11 +276,11 @@ Participate!
|
|||
============
|
||||
|
||||
Please report any errors and submit patches (if possible)! We only
|
||||
have access to a limited variety of hardware (Linux, Solaris, and
|
||||
Windows). All contributions help.
|
||||
have access to a limited variety of hardware (Linux, Solaris, OS-X,
|
||||
and Windows). All contributions help.
|
||||
|
||||
If you would like to join the SWIG development team or contribute a
|
||||
language module to the distribution, please contact beazley@cs.uchicago.edu.
|
||||
language module to the distribution, please contact swig-dev@cs.uchicago.edu.
|
||||
|
||||
-- The SWIG Maintainers
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue