| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Fixes #894
|
|
|
|
|
|
|
| |
Go, Guile, Racket, Scilab: Add throws typemaps for std::string so that
thrown string exception messages can be seen.
Test all language for std::string throws typemaps
|
|
|
|
|
|
|
|
|
|
|
|
| |
For implementing full move semantics when passing parameters by value.
Based on SWIGTYPE && and std::unique_ptr typemaps which implement move
semantics.
Added for all languages, but untested for: Go, Ocaml, R, Scilab (and
unlikely to be fully functional for same reasons as for std::unique_ptr
support).
Issue #999
|
|
|
|
|
| |
More removal of casts in the out typemaps when copying objects to enable
C++ compilers to possibly make use of move semantics.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
| |
* Change the builder filename to match the loader filename
* Mark extern functions with SWIGEXPORT
* Fix bug: builder.sce not generated if with '-scilab -builder' option
Fixes #1853
|
|
|
|
|
|
|
|
| |
Use SWIG_<module>_Init() function to init the module rather than
<module>_Init() as the latter can collide with a function being wrapped.
Fixes #745
Fixes #1739
|
|
|
|
|
|
|
|
|
| |
Remove redundant NULL checks before free()/delete
The ISO C and C++ standards guarantee that it's safe to call these
on a NULL pointer, so it's not necessary for the calling code to
also check.
Fixes https://sourceforge.net/p/swig/feature-requests/70/
|
| |
|
| |
|
|
|
|
| |
Also provide consistent copy constructor declarations.
|
| |
|
| |
|
|
|
|
|
|
|
| |
Mostly in STL copy constructors.
Best to have parameter names as they make their way into the wrappers in
some target languages.
|
|
|
|
|
| |
Same file now for all languages except R which is still missing std_map.i.
Recent Java changes adding in std_set.i removed.
|
| |
|
| |
|
| |
|
|
|
| |
found via `codespell` and `grep`
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
typed pointers
|
|
|
|
|
|
| |
- Remove python code from octave's std_basic_string.i
- Correctly return an error to fix error handling when using std::basic_string in
overloaded methods - issue #1171.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Merge changes from Python/Ruby equivalent files to obtain a fix
for NULL handling of T*const& typemaps.
|
|
|
|
| |
Remove some left over cruft from the python port
|
|
|
|
|
| |
Add 'equivalent' attribute to typecheck typemap.
Closes #1098.
|
| |
|
| |
|
|
|
|
|
| |
Visual Studio 2015 debug builds:
error C4703: potentially uninitialized local pointer variable 'p' used
|
|
|
|
| |
import_stl test now working again
|
|
|
|
| |
[skip ci]
|
| |
|
|
|
|
| |
code size)
|
| |
|
| |
|
|
|
|
| |
initialized
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The vector of pointers (just fixed) were not working correctly because the
descriptors returned from swig::type_info() were sometimes returning
zero. Zero should only be used for void * as the subsequent call to
SWIG_ConvertPtr will blindly cast the pointer without checking
descriptor.
std::vector<void *> does not work and will require further changes:
specializing traits_info<void *> to return 0 and traits_asptr<void *>.
I tried this and traits_asptr<void> also needs to be added in which
seems odd and requires further investigation...
Lib/python/pystdcommon.swg:
template <> struct traits_info<void *> {
static swig_type_info *type_info() {
static swig_type_info *info = 0;
}
};
Lib/std/std_common.i:
template <>
struct traits_asptr<void *> {
static int asptr(PyObject *obj, void ***val) {
void **p;
swig_type_info *descriptor = 0;
int res = SWIG_ConvertPtr(obj, (void **)&p, descriptor, 0);
if (SWIG_IsOK(res)) {
if (val) *val = p;
}
return res;
}
};
// this is needed, but am not sure this is expected
template <>
struct traits_asptr<void> {
static int asptr(PyObject *obj, void **val) {
void **p;
swig_type_info *descriptor = 0;
int res = SWIG_ConvertPtr(obj, (void **)&p, descriptor, 0);
if (SWIG_IsOK(res)) {
if (val) *val = p;
}
return res;
}
};
|
| |
|
| |
|
| |
|
| |
|