add jstring.i for ruby
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8138 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
e06a5d0ccd
commit
dc915a44a1
4 changed files with 54 additions and 6 deletions
|
|
@ -42,18 +42,18 @@ SWIG_AsVal(jstring)(PyObject *obj, jstring *val)
|
|||
|
||||
%fragment(SWIG_From_frag(jstring),"header") {
|
||||
SWIGINTERNINLINE PyObject *
|
||||
SWIG_From(jstring)(jstring js)
|
||||
SWIG_From(jstring)(jstring val)
|
||||
{
|
||||
if (!js) {
|
||||
if (!val) {
|
||||
return SWIG_Py_Void();
|
||||
}
|
||||
if (sizeof(Py_UNICODE) == sizeof(jchar)) {
|
||||
return PyUnicode_FromUnicode((const Py_UNICODE *) JvGetStringChars(js),
|
||||
js->length());
|
||||
return PyUnicode_FromUnicode((const Py_UNICODE *) JvGetStringChars(val),
|
||||
JvGetStringUTFLength(val));
|
||||
} else {
|
||||
int len = js->length();
|
||||
int len = JvGetStringUTFLength(val);
|
||||
Py_UNICODE pchars[len];
|
||||
jchar *jchars = JvGetStringChars(js);
|
||||
jchar *jchars = JvGetStringChars(val);
|
||||
|
||||
for (int i = 0; i < len; i++) {
|
||||
pchars[i] = jchars[i];
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue