Commit graph

19,028 commits

Author SHA1 Message Date
Vladimir Kalinin
5768d87deb director generation fixes
Conflicts:
	Lib/java/feature_interface.i
	Source/Modules/csharp.cxx
	Source/Modules/java.cxx
2016-02-12 07:09:17 +00:00
William S Fulton
ccd46ec560 interface feature updates for C# latest on master
Updates for C# fully qualified names in C# layer
More Corrections for C# single output file option (-outfile)
2016-02-11 20:56:33 +00:00
William S Fulton
212300c62b interfaces branch merge fixes 2016-02-11 20:21:25 +00:00
William S Fulton
abccc13a4a Merge branch 'interfaces' into interfaces2
* interfaces:
  Remove unnecessary interfaces for concrete classes
  cosmetic code formatting changes
  Correct interface name attributes that are internal
  interface macro changes to support templates
  Test non-virtual method in Derived classes
  interface tests for a most derived class inheriting the interfaces further up the chain
  Rename GetCPtr/getCPtr to SWIGInterfaceUpcast
  interface feature support for const ref pointers (used by the STL)
  Interface feature support for arrays
  More interface feature testing for return values
  interface feature support for passing by value
  interface feature support for references
  Multiple inheritance parameters as pointers testing
  Simplify multiple_inheritance_abstract Java runtime test
  Warning fixes
  Rename test functions in multiple_inheritance_abstract testcase
  Formatting fixes in generated code for interface feature
  Cosmetic spacing changes in test case
  interface feature typemap corrections to handle NULL pointers
  interface test added
  javadirectorin fix
  interface implementation visibility
  interface inheritance (2)
  interface inheritance (1)
  feature:interface ported to Java
  propagate non-abstract "interface" base methods (3)
  propagate non-abstract "interface" base methods (2)
  propagate non-abstract "interface" base methods (1)
  namespace support added GetCPtr now returns HandleRef "feature:interface:name" is now mandatory attribute
  interfaces (1)
  interfaces (1)

Conflicts:
	Source/Modules/csharp.cxx
	Source/Modules/java.cxx
2016-02-11 19:37:31 +00:00
William S Fulton
3931b5800c Remove unnecessary interfaces for concrete classes
Add Java test for checking expected base and interfaces are generated (to be expanded further)
In the example, E was previously implementing IA, IB, IC. Now it doesn't implement any.
C# virtual/override still to be fixed for this test case
2016-02-10 20:54:39 +00:00
William S Fulton
993214872f cosmetic code formatting changes 2016-02-09 07:39:46 +00:00
William S Fulton
dd6af222f4 Correct interface name attributes that are internal
Attributes with 'feature:' prefix are reserved for %feature, not internal usage.
2016-02-09 07:22:07 +00:00
William S Fulton
f82efac231 interface macro changes to support templates
The C++ type must be last in the argument list to support templates with
multiple arguments which are separated by commas.
Affects DECLARE_INTERFACE and DECLARE_INTERFACE_RENAME.
2016-02-09 07:02:42 +00:00
William S Fulton
b0fd270e54 Test non-virtual method in Derived classes 2016-02-08 20:56:28 +00:00
William S Fulton
8c49741eb2 interface tests for a most derived class inheriting the interfaces further up the chain 2016-02-08 20:49:57 +00:00
William S Fulton
72e5c221b6 Rename GetCPtr/getCPtr to SWIGInterfaceUpcast
This is then similarly named to other similar functions:
SWIGUpcast and SWIGSmartPtrUpcast
2016-02-08 20:49:46 +00:00
Karl Wette
290e2d3a5c octave: update manual and CHANGES.current 2016-02-07 20:22:39 +01:00
Karl Wette
125329466d octave: map unary functions to __...___ Python-style unary members
- Only available in Octave 3.8.0 and higher
2016-02-07 20:22:39 +01:00
Karl Wette
000ab753df octave: recognize Python __float__ numeric conversion operator 2016-02-07 20:22:39 +01:00
Karl Wette
697a1b7c9d octrun.swg: simplify unary operator calls in dims() and string_value() 2016-02-07 20:22:39 +01:00
Karl Wette
0dd16f92ab octrun.swg: make dispatch_[unary|binary|index]_op() const-qualified 2016-02-07 20:22:39 +01:00
Karl Wette
b93b1871a9 octave: export function swig_octave_prereq() for easily testing Octave version 2016-02-07 20:22:39 +01:00
Karl Wette
9f82bcee2a octave: update manual; Octave operators are __python__ style 2016-02-07 20:22:39 +01:00
William S Fulton
e8907132cc interface feature support for const ref pointers (used by the STL)
Also interface feature return by value fixes
2016-02-07 13:58:47 +00:00
William S Fulton
7270da08f4 Merge pull request #585 from tamuratak/master
Fix typo in Ruby docs
2016-02-07 13:19:27 +00:00
William S Fulton
5b86e2af13 Interface feature support for arrays 2016-02-06 20:15:48 +00:00
William S Fulton
5572b5f035 More interface feature testing for return values 2016-02-06 20:15:47 +00:00
William S Fulton
a1f2d60535 interface feature support for passing by value
Also add in missing $owner for governing ownership when returning pointers and references
2016-02-06 20:15:40 +00:00
William S Fulton
3eec3e2ea5 interface feature support for references 2016-02-06 20:15:29 +00:00
William S Fulton
eb15ba1638 Multiple inheritance parameters as pointers testing 2016-02-06 16:34:33 +00:00
William S Fulton
cb65828310 Simplify multiple_inheritance_abstract Java runtime test 2016-02-06 16:34:33 +00:00
William S Fulton
f78b9264b8 Warning fixes 2016-02-06 16:34:33 +00:00
William S Fulton
7379ea7848 Rename test functions in multiple_inheritance_abstract testcase
new names are just more friendly for analysing the test
2016-02-06 16:34:33 +00:00
William S Fulton
a7370b7bc0 Formatting fixes in generated code for interface feature 2016-02-06 16:34:24 +00:00
William S Fulton
4bbb1c915a Merge branch 'pjohangustavsson-patch-1'
* pjohangustavsson-patch-1:
  Add C# -namespace symbol fix into CHANGES
  Update csharp.cxx
2016-02-06 09:08:36 +00:00
William S Fulton
0cf59ff442 Add C# -namespace symbol fix into CHANGES 2016-02-06 09:07:23 +00:00
Johan Gustavsson
1458326f4c Update csharp.cxx
When people use the -namespace option, they often intend for the input to swig to wrap a particular namespace in a single module. This option should also have an effect on how C++ wrapper function names are mangled, and not just the C# proxy code.
2016-02-06 08:59:50 +00:00
William S Fulton
bb01ed3286 Merge branch 'ahnolds-classic_python'
* ahnolds-classic_python:
  Updating changelog and marking -classic as passing CI
  Support checking names of old-style classic classes
  Don't claim to new-style support in classic mode
  Clean up setting _object
  Removing __swig_getmethods__ for static methods
  Support python(pre|ap)pend on static methods in classic mode
  Add support for static methods in classic mode
  When possible, use PyInt rather than PyLong
2016-02-06 08:01:08 +00:00
William S Fulton
5c758f6972 Merge branch 'ahnolds-pyunicode_wstrings'
* ahnolds-pyunicode_wstrings:
  Documentation on Python Bytes/Unicode distinction
  Tests for Python Bytes/Unicode distinction
  Add support for Python Bytes/Unicode distinction
2016-02-06 07:57:30 +00:00
William S Fulton
439f049115 Merge pull request #606 from ahnolds/ruby2.3
Travis uses rvm, use it to install ruby 2.3.0
2016-02-06 07:56:33 +00:00
Alec Cooper
b83aa57a54 Travis uses rvm, use it to install ruby 2.3.0 2016-02-05 22:00:41 -05:00
William S Fulton
a16a818523 Cosmetic spacing changes in test case 2016-02-05 20:20:39 +00:00
William S Fulton
abf39433e3 interface feature typemap corrections to handle NULL pointers 2016-02-05 19:28:29 +00:00
William S Fulton
d06f2c9e92 Ruby 2.3 Travis tests requires Ubuntu Trusty 2016-02-05 06:56:49 +00:00
Alec Cooper
ba40c4a256 Documentation on Python Bytes/Unicode distinction 2016-02-04 21:07:40 -05:00
Alec Cooper
17a4143dd0 Tests for Python Bytes/Unicode distinction 2016-02-04 21:07:40 -05:00
Alec Cooper
33edfa4a62 Add support for Python Bytes/Unicode distinction 2016-02-04 20:16:41 -05:00
Alec Cooper
e67b9d00a4 Updating changelog and marking -classic as passing CI 2016-02-04 15:29:13 -05:00
Alec Cooper
acbe04b548 Support checking names of old-style classic classes 2016-02-04 15:27:54 -05:00
Alec Cooper
506a5bc8e6 Don't claim to new-style support in classic mode 2016-02-04 15:27:54 -05:00
Alec Cooper
475d03f195 Clean up setting _object
Don't bother setting _object in modern mode since it isn't used
Catch __builtin__.Exception rather than AttributeError since the check for
object hasn't been through something that would raise an AttributeError since
3d8ddfc4 in 2008
2016-02-04 15:27:54 -05:00
Alec Cooper
866429d0f7 Removing __swig_getmethods__ for static methods
Static methods will always be found by normal attribute lookup, so there's no
need to check for them during __getattr__ (aka _swig_getattr_nondynamic)
2016-02-04 15:27:54 -05:00
Alec Cooper
b45164e098 Support python(pre|ap)pend on static methods in classic mode
Adding a test that covers this case to the python_append test-suite
Note: staticmethod function has been available since Python 2.2
2016-02-04 15:27:54 -05:00
Alec Cooper
d91064aa6a Add support for static methods in classic mode 2016-02-04 15:27:54 -05:00
Alec Cooper
2e1595a4d0 When possible, use PyInt rather than PyLong
This is especially important for the unsigned long typemap, which is used by
the size_t typemap, which is in turn used for lengths of std containers etc.
In Python2, len requires old-style classes' __len__ method return a PyIntObject
rather than a PyLongObject, so this supports that requirement.
2016-02-04 15:27:54 -05:00