17db96d56Sopenharmony_ci/*[clinic input]
27db96d56Sopenharmony_cipreserve
37db96d56Sopenharmony_ci[clinic start generated code]*/
47db96d56Sopenharmony_ci
57db96d56Sopenharmony_cistatic PyObject *
67db96d56Sopenharmony_cistructseq_new_impl(PyTypeObject *type, PyObject *arg, PyObject *dict);
77db96d56Sopenharmony_ci
87db96d56Sopenharmony_cistatic PyObject *
97db96d56Sopenharmony_cistructseq_new(PyTypeObject *type, PyObject *args, PyObject *kwargs)
107db96d56Sopenharmony_ci{
117db96d56Sopenharmony_ci    PyObject *return_value = NULL;
127db96d56Sopenharmony_ci    static const char * const _keywords[] = {"sequence", "dict", NULL};
137db96d56Sopenharmony_ci    static _PyArg_Parser _parser = {NULL, _keywords, "structseq", 0};
147db96d56Sopenharmony_ci    PyObject *argsbuf[2];
157db96d56Sopenharmony_ci    PyObject * const *fastargs;
167db96d56Sopenharmony_ci    Py_ssize_t nargs = PyTuple_GET_SIZE(args);
177db96d56Sopenharmony_ci    Py_ssize_t noptargs = nargs + (kwargs ? PyDict_GET_SIZE(kwargs) : 0) - 1;
187db96d56Sopenharmony_ci    PyObject *arg;
197db96d56Sopenharmony_ci    PyObject *dict = NULL;
207db96d56Sopenharmony_ci
217db96d56Sopenharmony_ci    fastargs = _PyArg_UnpackKeywords(_PyTuple_CAST(args)->ob_item, nargs, kwargs, NULL, &_parser, 1, 2, 0, argsbuf);
227db96d56Sopenharmony_ci    if (!fastargs) {
237db96d56Sopenharmony_ci        goto exit;
247db96d56Sopenharmony_ci    }
257db96d56Sopenharmony_ci    arg = fastargs[0];
267db96d56Sopenharmony_ci    if (!noptargs) {
277db96d56Sopenharmony_ci        goto skip_optional_pos;
287db96d56Sopenharmony_ci    }
297db96d56Sopenharmony_ci    dict = fastargs[1];
307db96d56Sopenharmony_ciskip_optional_pos:
317db96d56Sopenharmony_ci    return_value = structseq_new_impl(type, arg, dict);
327db96d56Sopenharmony_ci
337db96d56Sopenharmony_ciexit:
347db96d56Sopenharmony_ci    return return_value;
357db96d56Sopenharmony_ci}
367db96d56Sopenharmony_ci/*[clinic end generated code: output=ed3019acf49b656c input=a9049054013a1b77]*/
37