William S Fulton
319442a8c4
More move semantics improvements
...
More removal of casts in the out typemaps when copying objects to enable
C++ compilers to possibly make use of move semantics.
2022-07-04 11:19:50 +01:00
William S Fulton
71cd6a38fe
Performance optimisation for directors for classes passed by value
...
The directorin typemaps in the director methods now use std::move on the
input parameter when copying the object from the stack to the heap prior
to the callback into the target language, thereby taking advantage of
move semantics if available.
2022-07-04 11:19:29 +01:00
William S Fulton
3f8b8fe734
Enhancements for directorin typemaps
...
The directorin typemaps will now generate a temporary variable
(specified after the type), such as:
%typemap(directorin) MyType (MyType *temp) { ... use temp ... }
The shared_ptr director typemaps have been fixed for use in functions
that take more than one parameter.
2017-10-16 19:28:27 +01:00
William S Fulton
6470fe8c36
Director shared_ptr typemaps for scripting languages
...
Modify the Python and Ruby director shared_ptr typemaps to be language neutral.
Port the director modifications to other scripting languages that
have shared_ptr support - Octave, R and Scilab. Scilab shared_ptr
support is not fully working and needs work though.
2017-10-13 07:34:38 +01:00
William S Fulton
114fab31a1
Scilab, R and Octave shared_ptr typemaps null fix
...
Merge changes from Python/Ruby equivalent files to obtain a fix
for NULL handling of T*const& typemaps.
2017-10-11 18:08:32 +01:00
William S Fulton
a674edebf5
Octave and R shared_ptr typemaps update
...
Synchronize typemaps with other identical typemaps in Scilab/Ruby.
Adds some missing $disown support.
2017-10-11 08:33:02 +01:00
William S Fulton
ed4b84f4d3
Fix overloading of shared_ptr method overloading
...
Add 'equivalent' attribute to typecheck typemap.
Closes #1098 .
2017-09-23 15:19:34 +01:00
William S Fulton
ab1e9f5bd9
Consistent whitespace amongst all the shared_ptr and intrusive_ptr typemaps
...
[skip ci]
2017-04-20 19:21:47 +01:00
William S Fulton
fcb383b46b
shared_ptr typemap error message fix for global variables
...
$argnum was not being expanded in the generated code
Correct to use the error message from the standard typemaps
2015-09-25 22:57:59 +01:00
Jeremy
e301457a43
Attempting fixes for Octave shared_ptr support
2015-01-05 10:53:06 -05:00
William S Fulton
23373e9ffd
Revert "Octave: cleanup/restructure library files"
...
This reverts commit bf12d76d03 .
Reverting a series of Octave commits for re-applying again without
incorrect whitespace changes.
2014-10-09 19:34:02 +01:00
Karl Wette
bf12d76d03
Octave: cleanup/restructure library files
...
- Restructure runtime code into declarations, function
and class definitions, and initialisation code
- Rename internal functions/types to follow SWIG_Octave...
or SwigOct... naming styles
- Style/comment/whitespace cleanups
2014-10-04 19:18:32 +02:00
William S Fulton
3dfac02269
shared_ptr improvements so the proxy class does not need to be specified - SWIG_SHARED_PTR macro deprecated and replaced by %shared_ptr
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12037 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-22 23:57:19 +00:00
William S Fulton
12cfc251e4
Fix #2408232 . Improve shared_ptr and intrusive_ptr wrappers for classes in an inheritance hierarchy. No special treatment is needed for derived classes, the SWIG_SHARED_PTR_DERIVED macro is deprecated.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12036 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-22 22:49:47 +00:00
William S Fulton
bdb136d611
Change typemap matching rules for the default type (SWIGTYPE) to follow template partial specialization type deduction. Fixes some containers of const pointers. SWIGTYPE*& typemps removed and replaced with SWIGTYPE *const&.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11958 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-04-01 18:26:37 +00:00
William S Fulton
1de9c8b27f
Add a few comments about the smart pointer implementation
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11828 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-01-23 15:30:42 +00:00
William S Fulton
ed0e1c7d90
minor formatting change - copying the python version
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10449 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-05-14 22:10:31 +00:00
Xavier Delacour
cb131bfeb9
Fixed import directive, string access segv bug, SWIG_Octave_{Get,Set}Module bug, and added partial support for boost pointers.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10301 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-03-09 20:21:14 +00:00