swig/Source
William S Fulton 973590ff91 R rtypecheck typemaps
Further switch to use rtypecheck typemaps instead of hard coded logic.
The full switch to typemaps is deferred until swig-4.2 as it can't be fully
backwards compatible. For now a warning is provided to help the
transition. It provides the full typemap that should be placed into
a user's interface file, for example:

%typemap("rtype") int32_t * "integer"
void testmethod(int32_t * i);
void testmethod();

If there is no rtypecheck typemap for int32_t *, the warning shown is:

example.i:7: Warning 750: Optional rtypecheck code is deprecated. Add the
following typemap to fix as the next version of SWIG will not work without it:
%typemap("rtypecheck") int32_t * %{ (is.integer($arg) || is.numeric($arg)) %}

The warning is shown for any code that previously used "numeric", "integer" or
"character" for the rtype typemap. Copying the rtypecheck typemap as
shown into the user interface file will provide the appropriate fix and
the warning will disappear. This is important to do as swig-4.2 will
not be able to provide this helpful warning.
2022-11-05 08:40:26 +00:00
..
CParse Improve director unwrap detection for the return type 2022-10-10 08:45:26 +01:00
DOH Use https for swig.org links 2022-10-06 13:16:39 +13:00
Doxygen Use https for swig.org links 2022-10-06 13:16:39 +13:00
Include R rtypecheck typemaps 2022-11-05 08:40:26 +00:00
Modules R rtypecheck typemaps 2022-11-05 08:40:26 +00:00
Preprocessor Use https for swig.org links 2022-10-06 13:16:39 +13:00
Swig C89 fixes 2022-10-14 22:34:18 +01:00
Makefile.am Remove -browse command line option 2022-04-03 08:56:07 +12:00
README Remove details of long-removed directories 2021-05-16 08:42:39 +12:00

SWIG Source directory

 Source/DOH          -  A core set of basic datatypes including
                        strings, lists, hashes, and files.  Used
                        extensively by the rest of SWIG.

 Source/Swig         -  Swig core. Type-system, utility functions.

 Source/Preprocessor -  SWIG C Preprocessor

 Source/CParse       -  SWIG C Parser (still messy)

 Source/Modules      -  Language modules.

 Source/Include      -  Include files.