1/*[clinic input] 2preserve 3[clinic start generated code]*/ 4 5PyDoc_STRVAR(_weakref_getweakrefcount__doc__, 6"getweakrefcount($module, object, /)\n" 7"--\n" 8"\n" 9"Return the number of weak references to \'object\'."); 10 11#define _WEAKREF_GETWEAKREFCOUNT_METHODDEF \ 12 {"getweakrefcount", (PyCFunction)_weakref_getweakrefcount, METH_O, _weakref_getweakrefcount__doc__}, 13 14static Py_ssize_t 15_weakref_getweakrefcount_impl(PyObject *module, PyObject *object); 16 17static PyObject * 18_weakref_getweakrefcount(PyObject *module, PyObject *object) 19{ 20 PyObject *return_value = NULL; 21 Py_ssize_t _return_value; 22 23 _return_value = _weakref_getweakrefcount_impl(module, object); 24 if ((_return_value == -1) && PyErr_Occurred()) { 25 goto exit; 26 } 27 return_value = PyLong_FromSsize_t(_return_value); 28 29exit: 30 return return_value; 31} 32 33PyDoc_STRVAR(_weakref__remove_dead_weakref__doc__, 34"_remove_dead_weakref($module, dct, key, /)\n" 35"--\n" 36"\n" 37"Atomically remove key from dict if it points to a dead weakref."); 38 39#define _WEAKREF__REMOVE_DEAD_WEAKREF_METHODDEF \ 40 {"_remove_dead_weakref", (PyCFunction)_weakref__remove_dead_weakref, METH_VARARGS, _weakref__remove_dead_weakref__doc__}, 41 42static PyObject * 43_weakref__remove_dead_weakref_impl(PyObject *module, PyObject *dct, 44 PyObject *key); 45 46static PyObject * 47_weakref__remove_dead_weakref(PyObject *module, PyObject *args) 48{ 49 PyObject *return_value = NULL; 50 PyObject *dct; 51 PyObject *key; 52 53 if (!PyArg_ParseTuple(args, "O!O:_remove_dead_weakref", 54 &PyDict_Type, &dct, &key)) { 55 goto exit; 56 } 57 return_value = _weakref__remove_dead_weakref_impl(module, dct, key); 58 59exit: 60 return return_value; 61} 62/*[clinic end generated code: output=e860dd818a44bc9b input=a9049054013a1b77]*/ 63