diff options
author | Dave Beazley <dave-swig@dabeaz.com> | 2003-05-29 18:27:57 +0000 |
---|---|---|
committer | Dave Beazley <dave-swig@dabeaz.com> | 2003-05-29 18:27:57 +0000 |
commit | e7793fb51cd449cb68c2d52a1d1112f686d1670e (patch) | |
tree | b50b8392ec1d993c4e54d54a21496078fe146aed /Lib | |
parent | fc66bde4c102b945902f71fc6457fd0c8f4b5767 (diff) | |
download | swig-e7793fb51cd449cb68c2d52a1d1112f686d1670e.tar.gz |
Added setter for global arrays.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4831 626c5289-ae23-0410-ae9c-e8d60b6d4f22
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/python/python.swg | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/Lib/python/python.swg b/Lib/python/python.swg index 7f61ec04a..78ee93ff2 100644 --- a/Lib/python/python.swg +++ b/Lib/python/python.swg @@ -300,6 +300,18 @@ return 1; } +%typemap(varin) SWIGTYPE [ANY] { + void *temp; + int ii; + $1_basetype *b = 0; + if ((SWIG_ConvertPtr($input,(void **) &temp, $1_descriptor, SWIG_POINTER_EXCEPTION)) == -1) { + PyErr_SetString(PyExc_TypeError, "C variable '$name ($1_ltype)'"); + return 1; + } + b = ($1_basetype *) $1; + for (ii = 0; ii < $1_size; ii++) b[ii] = *(($1_basetype *) temp + ii); +} + /* Special case for string array variables */ %typemap(varin) char [ANY] { char *temp = (char *) PyString_AsString($input); |