17db96d56Sopenharmony_ci/*[clinic input] 27db96d56Sopenharmony_cipreserve 37db96d56Sopenharmony_ci[clinic start generated code]*/ 47db96d56Sopenharmony_ci 57db96d56Sopenharmony_ciPyDoc_STRVAR(module___init____doc__, 67db96d56Sopenharmony_ci"module(name, doc=None)\n" 77db96d56Sopenharmony_ci"--\n" 87db96d56Sopenharmony_ci"\n" 97db96d56Sopenharmony_ci"Create a module object.\n" 107db96d56Sopenharmony_ci"\n" 117db96d56Sopenharmony_ci"The name must be a string; the optional doc argument can have any type."); 127db96d56Sopenharmony_ci 137db96d56Sopenharmony_cistatic int 147db96d56Sopenharmony_cimodule___init___impl(PyModuleObject *self, PyObject *name, PyObject *doc); 157db96d56Sopenharmony_ci 167db96d56Sopenharmony_cistatic int 177db96d56Sopenharmony_cimodule___init__(PyObject *self, PyObject *args, PyObject *kwargs) 187db96d56Sopenharmony_ci{ 197db96d56Sopenharmony_ci int return_value = -1; 207db96d56Sopenharmony_ci static const char * const _keywords[] = {"name", "doc", NULL}; 217db96d56Sopenharmony_ci static _PyArg_Parser _parser = {NULL, _keywords, "module", 0}; 227db96d56Sopenharmony_ci PyObject *argsbuf[2]; 237db96d56Sopenharmony_ci PyObject * const *fastargs; 247db96d56Sopenharmony_ci Py_ssize_t nargs = PyTuple_GET_SIZE(args); 257db96d56Sopenharmony_ci Py_ssize_t noptargs = nargs + (kwargs ? PyDict_GET_SIZE(kwargs) : 0) - 1; 267db96d56Sopenharmony_ci PyObject *name; 277db96d56Sopenharmony_ci PyObject *doc = Py_None; 287db96d56Sopenharmony_ci 297db96d56Sopenharmony_ci fastargs = _PyArg_UnpackKeywords(_PyTuple_CAST(args)->ob_item, nargs, kwargs, NULL, &_parser, 1, 2, 0, argsbuf); 307db96d56Sopenharmony_ci if (!fastargs) { 317db96d56Sopenharmony_ci goto exit; 327db96d56Sopenharmony_ci } 337db96d56Sopenharmony_ci if (!PyUnicode_Check(fastargs[0])) { 347db96d56Sopenharmony_ci _PyArg_BadArgument("module", "argument 'name'", "str", fastargs[0]); 357db96d56Sopenharmony_ci goto exit; 367db96d56Sopenharmony_ci } 377db96d56Sopenharmony_ci if (PyUnicode_READY(fastargs[0]) == -1) { 387db96d56Sopenharmony_ci goto exit; 397db96d56Sopenharmony_ci } 407db96d56Sopenharmony_ci name = fastargs[0]; 417db96d56Sopenharmony_ci if (!noptargs) { 427db96d56Sopenharmony_ci goto skip_optional_pos; 437db96d56Sopenharmony_ci } 447db96d56Sopenharmony_ci doc = fastargs[1]; 457db96d56Sopenharmony_ciskip_optional_pos: 467db96d56Sopenharmony_ci return_value = module___init___impl((PyModuleObject *)self, name, doc); 477db96d56Sopenharmony_ci 487db96d56Sopenharmony_ciexit: 497db96d56Sopenharmony_ci return return_value; 507db96d56Sopenharmony_ci} 517db96d56Sopenharmony_ci/*[clinic end generated code: output=680276bc3a496d7a input=a9049054013a1b77]*/ 52