Simplify and speedup uses of Py_BuildValue():

* Py_BuildValue("(OOO)",a,b,c)  -->  PyTuple_Pack(3,a,b,c)
* Py_BuildValue("()",a)         -->  PyTuple_New(0)
* Py_BuildValue("O", a)         -->  Py_INCREF(a)
This commit is contained in:
Raymond Hettinger 2003-10-12 19:09:37 +00:00
parent cb2da43db8
commit 8ae4689657
25 changed files with 71 additions and 75 deletions

View file

@ -323,7 +323,7 @@ builtin_coerce(PyObject *self, PyObject *args)
return NULL;
if (PyNumber_Coerce(&v, &w) < 0)
return NULL;
res = Py_BuildValue("(OO)", v, w);
res = PyTuple_Pack(2, v, w);
Py_DECREF(v);
Py_DECREF(w);
return res;
@ -2185,7 +2185,7 @@ filtertuple(PyObject *func, PyObject *tuple)
good = item;
}
else {
PyObject *arg = Py_BuildValue("(O)", item);
PyObject *arg = PyTuple_Pack(1, item);
if (arg == NULL) {
Py_DECREF(item);
goto Fail_1;
@ -2252,7 +2252,7 @@ filterstring(PyObject *func, PyObject *strobj)
ok = 1;
} else {
PyObject *arg, *good;
arg = Py_BuildValue("(O)", item);
arg = PyTuple_Pack(1, item);
if (arg == NULL) {
Py_DECREF(item);
goto Fail_1;
@ -2346,7 +2346,7 @@ filterunicode(PyObject *func, PyObject *strobj)
if (func == Py_None) {
ok = 1;
} else {
arg = Py_BuildValue("(O)", item);
arg = PyTuple_Pack(1, item);
if (arg == NULL) {
Py_DECREF(item);
goto Fail_1;