/* suppose we need an empty C-coded function, equivalent to Python:
def empty1(*args):
pass
or identically:
def empty2(*args):
return None
There is still a right and a wrong way to do it...!
*/
/* WRONG! will mess up reference counts...: */
static PyObject*
empty3(PyObject* self, PyObject* args)
{
return Py_None;
}
/* Fine! the simplest way to do it...: */
static PyObject*
empty4(PyObject* self, PyObject* args)
{
return Py_BuildValue("");
}
/* Fine! the canonical approach...: */
static PyObject*
empty5(PyObject* self, PyObject* args)
{
Py_INCREF(Py_None);
return Py_None;
}