17db96d56Sopenharmony_ci/*[clinic input] 27db96d56Sopenharmony_cipreserve 37db96d56Sopenharmony_ci[clinic start generated code]*/ 47db96d56Sopenharmony_ci 57db96d56Sopenharmony_ciPyDoc_STRVAR(_testmultiphase_StateAccessType_get_defining_module__doc__, 67db96d56Sopenharmony_ci"get_defining_module($self, /)\n" 77db96d56Sopenharmony_ci"--\n" 87db96d56Sopenharmony_ci"\n" 97db96d56Sopenharmony_ci"Return the module of the defining class.\n" 107db96d56Sopenharmony_ci"\n" 117db96d56Sopenharmony_ci"Also tests that result of PyType_GetModuleByDef matches defining_class\'s\n" 127db96d56Sopenharmony_ci"module."); 137db96d56Sopenharmony_ci 147db96d56Sopenharmony_ci#define _TESTMULTIPHASE_STATEACCESSTYPE_GET_DEFINING_MODULE_METHODDEF \ 157db96d56Sopenharmony_ci {"get_defining_module", _PyCFunction_CAST(_testmultiphase_StateAccessType_get_defining_module), METH_METHOD|METH_FASTCALL|METH_KEYWORDS, _testmultiphase_StateAccessType_get_defining_module__doc__}, 167db96d56Sopenharmony_ci 177db96d56Sopenharmony_cistatic PyObject * 187db96d56Sopenharmony_ci_testmultiphase_StateAccessType_get_defining_module_impl(StateAccessTypeObject *self, 197db96d56Sopenharmony_ci PyTypeObject *cls); 207db96d56Sopenharmony_ci 217db96d56Sopenharmony_cistatic PyObject * 227db96d56Sopenharmony_ci_testmultiphase_StateAccessType_get_defining_module(StateAccessTypeObject *self, PyTypeObject *cls, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames) 237db96d56Sopenharmony_ci{ 247db96d56Sopenharmony_ci if (nargs) { 257db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "get_defining_module() takes no arguments"); 267db96d56Sopenharmony_ci return NULL; 277db96d56Sopenharmony_ci } 287db96d56Sopenharmony_ci return _testmultiphase_StateAccessType_get_defining_module_impl(self, cls); 297db96d56Sopenharmony_ci} 307db96d56Sopenharmony_ci 317db96d56Sopenharmony_ciPyDoc_STRVAR(_testmultiphase_StateAccessType_getmodulebydef_bad_def__doc__, 327db96d56Sopenharmony_ci"getmodulebydef_bad_def($self, /)\n" 337db96d56Sopenharmony_ci"--\n" 347db96d56Sopenharmony_ci"\n" 357db96d56Sopenharmony_ci"Test that result of PyType_GetModuleByDef with a bad def is NULL."); 367db96d56Sopenharmony_ci 377db96d56Sopenharmony_ci#define _TESTMULTIPHASE_STATEACCESSTYPE_GETMODULEBYDEF_BAD_DEF_METHODDEF \ 387db96d56Sopenharmony_ci {"getmodulebydef_bad_def", _PyCFunction_CAST(_testmultiphase_StateAccessType_getmodulebydef_bad_def), METH_METHOD|METH_FASTCALL|METH_KEYWORDS, _testmultiphase_StateAccessType_getmodulebydef_bad_def__doc__}, 397db96d56Sopenharmony_ci 407db96d56Sopenharmony_cistatic PyObject * 417db96d56Sopenharmony_ci_testmultiphase_StateAccessType_getmodulebydef_bad_def_impl(StateAccessTypeObject *self, 427db96d56Sopenharmony_ci PyTypeObject *cls); 437db96d56Sopenharmony_ci 447db96d56Sopenharmony_cistatic PyObject * 457db96d56Sopenharmony_ci_testmultiphase_StateAccessType_getmodulebydef_bad_def(StateAccessTypeObject *self, PyTypeObject *cls, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames) 467db96d56Sopenharmony_ci{ 477db96d56Sopenharmony_ci if (nargs) { 487db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "getmodulebydef_bad_def() takes no arguments"); 497db96d56Sopenharmony_ci return NULL; 507db96d56Sopenharmony_ci } 517db96d56Sopenharmony_ci return _testmultiphase_StateAccessType_getmodulebydef_bad_def_impl(self, cls); 527db96d56Sopenharmony_ci} 537db96d56Sopenharmony_ci 547db96d56Sopenharmony_ciPyDoc_STRVAR(_testmultiphase_StateAccessType_increment_count_clinic__doc__, 557db96d56Sopenharmony_ci"increment_count_clinic($self, /, n=1, *, twice=False)\n" 567db96d56Sopenharmony_ci"--\n" 577db96d56Sopenharmony_ci"\n" 587db96d56Sopenharmony_ci"Add \'n\' from the module-state counter.\n" 597db96d56Sopenharmony_ci"\n" 607db96d56Sopenharmony_ci"Pass \'twice\' to double that amount.\n" 617db96d56Sopenharmony_ci"\n" 627db96d56Sopenharmony_ci"This tests Argument Clinic support for defining_class."); 637db96d56Sopenharmony_ci 647db96d56Sopenharmony_ci#define _TESTMULTIPHASE_STATEACCESSTYPE_INCREMENT_COUNT_CLINIC_METHODDEF \ 657db96d56Sopenharmony_ci {"increment_count_clinic", _PyCFunction_CAST(_testmultiphase_StateAccessType_increment_count_clinic), METH_METHOD|METH_FASTCALL|METH_KEYWORDS, _testmultiphase_StateAccessType_increment_count_clinic__doc__}, 667db96d56Sopenharmony_ci 677db96d56Sopenharmony_cistatic PyObject * 687db96d56Sopenharmony_ci_testmultiphase_StateAccessType_increment_count_clinic_impl(StateAccessTypeObject *self, 697db96d56Sopenharmony_ci PyTypeObject *cls, 707db96d56Sopenharmony_ci int n, int twice); 717db96d56Sopenharmony_ci 727db96d56Sopenharmony_cistatic PyObject * 737db96d56Sopenharmony_ci_testmultiphase_StateAccessType_increment_count_clinic(StateAccessTypeObject *self, PyTypeObject *cls, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames) 747db96d56Sopenharmony_ci{ 757db96d56Sopenharmony_ci PyObject *return_value = NULL; 767db96d56Sopenharmony_ci static const char * const _keywords[] = {"n", "twice", NULL}; 777db96d56Sopenharmony_ci static _PyArg_Parser _parser = {NULL, _keywords, "increment_count_clinic", 0}; 787db96d56Sopenharmony_ci PyObject *argsbuf[2]; 797db96d56Sopenharmony_ci Py_ssize_t noptargs = nargs + (kwnames ? PyTuple_GET_SIZE(kwnames) : 0) - 0; 807db96d56Sopenharmony_ci int n = 1; 817db96d56Sopenharmony_ci int twice = 0; 827db96d56Sopenharmony_ci 837db96d56Sopenharmony_ci args = _PyArg_UnpackKeywords(args, nargs, NULL, kwnames, &_parser, 0, 1, 0, argsbuf); 847db96d56Sopenharmony_ci if (!args) { 857db96d56Sopenharmony_ci goto exit; 867db96d56Sopenharmony_ci } 877db96d56Sopenharmony_ci if (!noptargs) { 887db96d56Sopenharmony_ci goto skip_optional_pos; 897db96d56Sopenharmony_ci } 907db96d56Sopenharmony_ci if (args[0]) { 917db96d56Sopenharmony_ci n = _PyLong_AsInt(args[0]); 927db96d56Sopenharmony_ci if (n == -1 && PyErr_Occurred()) { 937db96d56Sopenharmony_ci goto exit; 947db96d56Sopenharmony_ci } 957db96d56Sopenharmony_ci if (!--noptargs) { 967db96d56Sopenharmony_ci goto skip_optional_pos; 977db96d56Sopenharmony_ci } 987db96d56Sopenharmony_ci } 997db96d56Sopenharmony_ciskip_optional_pos: 1007db96d56Sopenharmony_ci if (!noptargs) { 1017db96d56Sopenharmony_ci goto skip_optional_kwonly; 1027db96d56Sopenharmony_ci } 1037db96d56Sopenharmony_ci twice = PyObject_IsTrue(args[1]); 1047db96d56Sopenharmony_ci if (twice < 0) { 1057db96d56Sopenharmony_ci goto exit; 1067db96d56Sopenharmony_ci } 1077db96d56Sopenharmony_ciskip_optional_kwonly: 1087db96d56Sopenharmony_ci return_value = _testmultiphase_StateAccessType_increment_count_clinic_impl(self, cls, n, twice); 1097db96d56Sopenharmony_ci 1107db96d56Sopenharmony_ciexit: 1117db96d56Sopenharmony_ci return return_value; 1127db96d56Sopenharmony_ci} 1137db96d56Sopenharmony_ci 1147db96d56Sopenharmony_ciPyDoc_STRVAR(_testmultiphase_StateAccessType_get_count__doc__, 1157db96d56Sopenharmony_ci"get_count($self, /)\n" 1167db96d56Sopenharmony_ci"--\n" 1177db96d56Sopenharmony_ci"\n" 1187db96d56Sopenharmony_ci"Return the value of the module-state counter."); 1197db96d56Sopenharmony_ci 1207db96d56Sopenharmony_ci#define _TESTMULTIPHASE_STATEACCESSTYPE_GET_COUNT_METHODDEF \ 1217db96d56Sopenharmony_ci {"get_count", _PyCFunction_CAST(_testmultiphase_StateAccessType_get_count), METH_METHOD|METH_FASTCALL|METH_KEYWORDS, _testmultiphase_StateAccessType_get_count__doc__}, 1227db96d56Sopenharmony_ci 1237db96d56Sopenharmony_cistatic PyObject * 1247db96d56Sopenharmony_ci_testmultiphase_StateAccessType_get_count_impl(StateAccessTypeObject *self, 1257db96d56Sopenharmony_ci PyTypeObject *cls); 1267db96d56Sopenharmony_ci 1277db96d56Sopenharmony_cistatic PyObject * 1287db96d56Sopenharmony_ci_testmultiphase_StateAccessType_get_count(StateAccessTypeObject *self, PyTypeObject *cls, PyObject *const *args, Py_ssize_t nargs, PyObject *kwnames) 1297db96d56Sopenharmony_ci{ 1307db96d56Sopenharmony_ci if (nargs) { 1317db96d56Sopenharmony_ci PyErr_SetString(PyExc_TypeError, "get_count() takes no arguments"); 1327db96d56Sopenharmony_ci return NULL; 1337db96d56Sopenharmony_ci } 1347db96d56Sopenharmony_ci return _testmultiphase_StateAccessType_get_count_impl(self, cls); 1357db96d56Sopenharmony_ci} 1367db96d56Sopenharmony_ci/*[clinic end generated code: output=48739d81c3834078 input=a9049054013a1b77]*/ 137