Implement PyObject_DelItemString. Fixes #498915.

This commit is contained in:
Martin v. Löwis 2002-01-05 10:50:30 +00:00
parent 7731ed47cb
commit b0d71d0ec6
2 changed files with 26 additions and 0 deletions

View File

@ -445,6 +445,14 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/
statement: o[key]=v.
*/
DL_IMPORT(int) PyObject_DelItemString(PyObject *o, char *key);
/*
Remove the mapping for object, key, from the object *o.
Returns -1 on failure. This is equivalent to
the Python statement: del o[key].
*/
DL_IMPORT(int) PyObject_DelItem(PyObject *o, PyObject *key);
/*

View File

@ -174,6 +174,24 @@ PyObject_DelItem(PyObject *o, PyObject *key)
return -1;
}
int
PyObject_DelItemString(PyObject *o, char *key)
{
PyObject *okey;
int ret;
if (o == NULL || key == NULL) {
null_error();
return -1;
}
okey = PyString_FromString(key);
if (okey == NULL)
return -1;
ret = PyObject_DelItem(o, okey);
Py_DECREF(okey);
return ret;
}
int PyObject_AsCharBuffer(PyObject *obj,
const char **buffer,
int *buffer_len)