| 1393 | using dict_iterator = generic_iterator<iterator_policies::dict_readonly>; |
| 1394 | |
| 1395 | inline bool PyIterable_Check(PyObject *obj) { |
| 1396 | PyObject *iter = PyObject_GetIter(obj); |
| 1397 | if (iter) { |
| 1398 | Py_DECREF(iter); |
| 1399 | return true; |
| 1400 | } |
| 1401 | PyErr_Clear(); |
| 1402 | return false; |
| 1403 | } |
| 1404 | |
| 1405 | inline bool PyNone_Check(PyObject *o) { return o == Py_None; } |
| 1406 | inline bool PyEllipsis_Check(PyObject *o) { return o == Py_Ellipsis; } |
nothing calls this directly
no outgoing calls
no test coverage detected