Commit graph

19,307 commits

Author SHA1 Message Date
simon
bd3ffed482 scilab: fix template_rename test 2016-03-08 17:37:39 +01:00
simon
54b84b8fa1 scilab: runtime initialization needed in examples 2016-03-08 17:37:39 +01:00
simon
b9bddada7a scilab: fix object/pointer type checking 2016-03-08 17:37:39 +01:00
simon
424bebb165 scilab: pointers are mapped as a tlist (instead of pointers) containing type info 2016-03-08 17:37:39 +01:00
William S Fulton
e1dfad1a3b Change the name of the interface in %feature to be more portable
Use SwigInterface as a suffix to the class name when naming the
interface class instead of using a simple I as a prefix.
%feature_custom can be used to use I as a prefix if so desired.
2016-03-08 08:42:16 +00:00
William S Fulton
5117c77d4a Interface feature fix for typedef types 2016-03-07 21:42:27 +00:00
William S Fulton
2dec8c5514 Add limited support for %interface_impl and %shared_ptr 2016-03-06 21:20:23 +00:00
William S Fulton
21ee09fc19 Multiple inheritance warning wording tweak 2016-03-06 10:45:39 +00:00
William S Fulton
887531a072 Revert incorrect .gitignore change 2016-03-06 10:01:13 +00:00
Vladimir Kalinin
7e0b5ccf44 C# "override" fix for "extend" case 2016-03-05 19:34:38 +03:00
William S Fulton
7d76617dc3 Add checks for interface name symbol clashes 2016-03-03 22:48:35 +00:00
William S Fulton
5d58de60d6 interface feature test changes for the tests to pass for all languages 2016-03-03 19:45:00 +00:00
William S Fulton
5cf20086a4 Rename feature_interface.i to swiginterface.i 2016-03-03 08:55:20 +00:00
William S Fulton
a1245ef398 Re-organization of the interface feature common code
Move code to new feature.cxx file.
Activate it in the allocate phase rather than in individual languages.
2016-03-03 08:55:20 +00:00
William S Fulton
fa9d2687cb Port Java interface tests to C# 2016-03-03 08:55:20 +00:00
William S Fulton
4fb364744d Test %interface 2016-03-03 08:55:20 +00:00
William S Fulton
0bf4e965a6 Test %interface_impl 2016-03-03 08:55:20 +00:00
William S Fulton
7f3f8fd76a Use rstrip instead of regex encoder in %feature_rename
The regex encoder is not always available in SWIG builds.
2016-03-03 08:55:10 +00:00
simon
e5f4a60fbf scilab: fix indentation 2016-03-02 05:14:44 -05:00
simon
822733bf52 scilab: fix builder for scilab 6.0 (empty matrix error) 2016-03-02 05:14:44 -05:00
simon
94a94edae4 scilab: fix scilab 6.0 beta1 compilation error 2016-03-02 05:14:44 -05:00
William S Fulton
4a3e1fd44c Add rstrip encoder for use in %rename.
This is like the strip encoder but strips the symbol's suffix instead
of the prefix.
2016-03-02 07:11:09 +00:00
William S Fulton
3000824c94 Interface macros: %interface %interface_impl %interface_custom 2016-03-02 07:10:58 +00:00
Olly Betts
75510a121d [Python] Use std::isfinite() under C++11
Follow-up fix for https://github.com/swig/swigissues/615
2016-03-01 19:10:03 +13:00
Olly Betts
5733cc1d2a [Python] Fix isfinite() check to work with GCC6
Fixes https://github.com/swig/swig/issues/615 reported by jplesnik.
2016-03-01 15:26:33 +13:00
William S Fulton
14d2341512 Add $interfacename family of special variable expansions
This is a simple expansion expanding to the name of the interface and is
not qualified like $javainterfacename and $csinterfacename.
Expansion within typemaps is much like $javainterfacename otherwise.
Note that expansion within the pure java code typemap,
'javainterfacecode' and similarly pure C# code typemap,
'csinterfacecode' works like $javaclassname/$csclassname and
$&interfacename should not be used, just $interfacename.
2016-02-29 21:18:42 +00:00
William S Fulton
8df8c8a97a Add multiple_inheritance_nspace testcase 2016-02-29 21:14:38 +00:00
William S Fulton
c71dba5021 Interface name handling improvements and special variable changes
Support expansion of name attribute in: %feature("interface", name="%s")
%s expands to the proxy class name and all the usual %rename functions
can be used (regex, strip, camelcase etc) to derive the interface name
from the proxy class name.
Rename $interfacename family of special variables to $javainterfacename for Java
Rename $interfacename family of special variables to $csinterfacename for C#
This is to free up $interfacename for simple interface name expansion in forthcoming commit
2016-02-29 20:18:01 +00:00
William S Fulton
f112a0b610 Correct regex example comment 2016-02-29 07:55:01 +00:00
William S Fulton
9f0e7885ce Properly hide unexposed naming functions in naming.c 2016-02-29 07:11:05 +00:00
William S Fulton
64bd1c5d39 C++ namespace testing for interface feature 2016-02-26 18:17:20 +00:00
William S Fulton
3b8f00f774 interface feature - SWIG_JAVABODY_PROXY does not need to be overridden 2016-02-26 18:17:20 +00:00
William S Fulton
2f1c34be58 Support namespaces and nspace with the interface feature for C# 2016-02-26 18:17:20 +00:00
William S Fulton
50fec04759 Support namespaces and nspace with the interface feature for Java 2016-02-26 18:17:14 +00:00
William S Fulton
31b22ff6ac Cosmetic test case changes 2016-02-26 07:35:18 +00:00
William S Fulton
1737fc9b9b Add Java premature garbage collection prevention parameter (pgcpp) to interface feature
pgcpp was turned off but it is still needed for the interface feature
to prevent premature garbage collection of the proxy class being passed
into the C++ layer.
2016-02-24 08:30:10 +00:00
Emmanuel Julien
2730ac9c8f Work around a limitation of the Python binding generator related to the += family of operators. 2016-02-23 11:26:33 +01:00
William S Fulton
e7bb3afa0c Create javainterfacecode and csinterfacecode typemaps
The interface feature is no longer hard coded and can
be controlled by a user via these new typemaps.
2016-02-23 07:30:00 +00:00
William S Fulton
66344adf9e Merge branch 'interfaces' of github.com:/swig/swig into interfaces
* 'interfaces' of github.com:/swig/swig:
  IntPtr & HandleRef absolute names used
  virtual/override fix
2016-02-23 07:10:15 +00:00
Emmanuel Julien
8df7c5fb7e Fix Python 3 division member operator when -builtin is not used. 2016-02-22 16:30:24 +01:00
Emmanuel Julien
cf370fb504 Fix class member division operator.
Define the nb_divide/nb_inplace_divide slots in the interface and use it them as nb_divide/nb_inplace_divide for Python 2.x and as nb_true_divide/nb_inplace_trus_divide for Python 3.x.

The Python 3.x nb_floor_divide/nb_inplace_floor_divide slots (operator // in Python) are not populated by the interface.
2016-02-22 14:54:19 +01:00
William S Fulton
fa5f3abf4d Correct testcase warning fix 2016-02-22 07:06:47 +00:00
William S Fulton
1a26710106 test-suite warning fixes 2016-02-21 21:36:58 +00:00
William S Fulton
1e7c04c1eb Duplicate tests that are run twice as both C and C++ tests to fix parallel make: li_cdata_carrays 2016-02-21 21:36:58 +00:00
William S Fulton
7e1d95de09 Move subdirectory .gitignore to top level 2016-02-21 21:36:58 +00:00
William S Fulton
0ad7541d03 Update .gitignore for Go 2016-02-21 21:36:58 +00:00
William S Fulton
bbc06c5254 Don't run some tests twice 2016-02-21 21:36:43 +00:00
William S Fulton
ed1074829f Duplicate tests that are run twice as both C and C++ tests to fix parallel make: typedef_struct 2016-02-21 19:24:27 +00:00
William S Fulton
155e31626c Duplicate tests that are run twice as both C and C++ tests to fix parallel make: overload_extend 2016-02-21 19:24:11 +00:00
William S Fulton
0bd41dc14d rename overload_extendc testcase 2016-02-21 18:04:04 +00:00