reSWIGged

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@26504 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn
2004-03-30 20:09:28 +00:00
parent 73adcb0150
commit 69223c7017
46 changed files with 630 additions and 352 deletions

View File

@@ -814,7 +814,15 @@ SWIG_CheckLongInRange(long value, const char* type,
SWIGSTATICINLINE(long)
SWIG_AsLong(PyObject * obj)
{
return PyInt_Check(obj) ? PyInt_AsLong(obj) : PyLong_AsLong(obj);
if (PyNumber_Check(obj))
return PyInt_AsLong(obj);
else {
PyObject* errmsg = PyString_FromFormat("Expected number, got %s",
obj->ob_type->tp_name);
PyErr_SetObject(PyExc_TypeError, errmsg);
Py_DECREF(errmsg);
return 0;
}
}
@@ -1127,9 +1135,9 @@ SWIG_AsUnsignedLong(PyObject * obj)
if (PyLong_Check(obj)) {
return PyLong_AsUnsignedLong(obj);
} else {
long i = PyInt_AsLong(obj);
long i = SWIG_AsLong(obj);
if ( !PyErr_Occurred() && (i < 0)) {
PyErr_SetString(PyExc_TypeError, "negative value for unsigned type");
PyErr_SetString(PyExc_TypeError, "negative value received for unsigned type");
}
return i;
}
@@ -1182,17 +1190,15 @@ SWIG_CheckLong(PyObject* obj)
SWIGSTATICINLINE(double)
SWIG_AsDouble(PyObject *obj)
{
double val = (PyFloat_Check(obj)) ? PyFloat_AsDouble(obj) :
#if HAVE_LONG_LONG
((PyInt_Check(obj)) ? PyInt_AsLong(obj) : PyLong_AsLongLong(obj));
#else
((PyInt_Check(obj)) ? PyInt_AsLong(obj) : PyLong_AsLong(obj));
#endif
if (PyErr_Occurred()) {
PyErr_Clear();
PyErr_SetString(PyExc_TypeError, "a double is expected");
}
return val;
if (PyNumber_Check(obj))
return PyFloat_AsDouble(obj);
else {
PyObject* errmsg = PyString_FromFormat("Expected number, got %s",
obj->ob_type->tp_name);
PyErr_SetObject(PyExc_TypeError, errmsg);
Py_DECREF(errmsg);
return 0;
}
}