RejectKeywords */
| 20408 | |
| 20409 | /* RejectKeywords */ |
| 20410 | static void __Pyx_RejectKeywords(const char* function_name, PyObject *kwds) { |
| 20411 | PyObject *key = NULL; |
| 20412 | if (CYTHON_METH_FASTCALL && likely(PyTuple_Check(kwds))) { |
| 20413 | key = __Pyx_PySequence_ITEM(kwds, 0); |
| 20414 | } else { |
| 20415 | #if CYTHON_AVOID_BORROWED_REFS |
| 20416 | PyObject *pos = NULL; |
| 20417 | #else |
| 20418 | Py_ssize_t pos = 0; |
| 20419 | #endif |
| 20420 | #if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments) |
| 20421 | if (unlikely(!PyArg_ValidateKeywordArguments(kwds))) return; |
| 20422 | #endif |
| 20423 | __Pyx_PyDict_NextRef(kwds, &pos, &key, NULL); |
| 20424 | #if CYTHON_AVOID_BORROWED_REFS |
| 20425 | Py_XDECREF(pos); |
| 20426 | #endif |
| 20427 | } |
| 20428 | if (likely(key)) { |
| 20429 | PyErr_Format(PyExc_TypeError, |
| 20430 | "%s() got an unexpected keyword argument '%U'", |
| 20431 | function_name, key); |
| 20432 | Py_DECREF(key); |
| 20433 | } |
| 20434 | } |
| 20435 | |
| 20436 | /* RaiseDoubleKeywords (used by ParseKeywordsImpl) */ |
| 20437 | static void __Pyx_RaiseDoubleKeywordsError( |
no test coverage detected