17db96d56Sopenharmony_ci#ifndef Py_BUILD_CORE_BUILTIN 27db96d56Sopenharmony_ci# define Py_BUILD_CORE_MODULE 1 37db96d56Sopenharmony_ci#endif 47db96d56Sopenharmony_ci 57db96d56Sopenharmony_ci/* Always enable assertions */ 67db96d56Sopenharmony_ci#undef NDEBUG 77db96d56Sopenharmony_ci 87db96d56Sopenharmony_ci#define PY_SSIZE_T_CLEAN 97db96d56Sopenharmony_ci 107db96d56Sopenharmony_ci#include "Python.h" 117db96d56Sopenharmony_ci 127db96d56Sopenharmony_ci#include "clinic/_testclinic.c.h" 137db96d56Sopenharmony_ci 147db96d56Sopenharmony_ci 157db96d56Sopenharmony_ci/* Pack arguments to a tuple, implicitly increase all the arguments' refcount. 167db96d56Sopenharmony_ci * NULL arguments will be replaced to Py_None. */ 177db96d56Sopenharmony_cistatic PyObject * 187db96d56Sopenharmony_cipack_arguments_newref(int argc, ...) 197db96d56Sopenharmony_ci{ 207db96d56Sopenharmony_ci assert(!PyErr_Occurred()); 217db96d56Sopenharmony_ci PyObject *tuple = PyTuple_New(argc); 227db96d56Sopenharmony_ci if (!tuple) { 237db96d56Sopenharmony_ci return NULL; 247db96d56Sopenharmony_ci } 257db96d56Sopenharmony_ci 267db96d56Sopenharmony_ci va_list vargs; 277db96d56Sopenharmony_ci va_start(vargs, argc); 287db96d56Sopenharmony_ci for (int i = 0; i < argc; i++) { 297db96d56Sopenharmony_ci PyObject *arg = va_arg(vargs, PyObject *); 307db96d56Sopenharmony_ci if (arg) { 317db96d56Sopenharmony_ci if (_PyObject_IsFreed(arg)) { 327db96d56Sopenharmony_ci PyErr_Format(PyExc_AssertionError, 337db96d56Sopenharmony_ci "argument %d at %p is freed or corrupted!", 347db96d56Sopenharmony_ci i, arg); 357db96d56Sopenharmony_ci va_end(vargs); 367db96d56Sopenharmony_ci Py_DECREF(tuple); 377db96d56Sopenharmony_ci return NULL; 387db96d56Sopenharmony_ci } 397db96d56Sopenharmony_ci } 407db96d56Sopenharmony_ci else { 417db96d56Sopenharmony_ci arg = Py_None; 427db96d56Sopenharmony_ci } 437db96d56Sopenharmony_ci PyTuple_SET_ITEM(tuple, i, Py_NewRef(arg)); 447db96d56Sopenharmony_ci } 457db96d56Sopenharmony_ci va_end(vargs); 467db96d56Sopenharmony_ci return tuple; 477db96d56Sopenharmony_ci} 487db96d56Sopenharmony_ci 497db96d56Sopenharmony_ci/* Pack arguments to a tuple. 507db96d56Sopenharmony_ci * `wrapper` is function which converts primitive type to PyObject. 517db96d56Sopenharmony_ci * `arg_type` is type that arguments should be converted to before wrapped. */ 527db96d56Sopenharmony_ci#define RETURN_PACKED_ARGS(argc, wrapper, arg_type, ...) do { \ 537db96d56Sopenharmony_ci assert(!PyErr_Occurred()); \ 547db96d56Sopenharmony_ci arg_type in[argc] = {__VA_ARGS__}; \ 557db96d56Sopenharmony_ci PyObject *out[argc] = {NULL,}; \ 567db96d56Sopenharmony_ci for (int _i = 0; _i < argc; _i++) { \ 577db96d56Sopenharmony_ci out[_i] = wrapper(in[_i]); \ 587db96d56Sopenharmony_ci assert(out[_i] || PyErr_Occurred()); \ 597db96d56Sopenharmony_ci if (!out[_i]) { \ 607db96d56Sopenharmony_ci for (int _j = 0; _j < _i; _j++) { \ 617db96d56Sopenharmony_ci Py_DECREF(out[_j]); \ 627db96d56Sopenharmony_ci } \ 637db96d56Sopenharmony_ci return NULL; \ 647db96d56Sopenharmony_ci } \ 657db96d56Sopenharmony_ci } \ 667db96d56Sopenharmony_ci PyObject *tuple = PyTuple_New(argc); \ 677db96d56Sopenharmony_ci if (!tuple) { \ 687db96d56Sopenharmony_ci for (int _i = 0; _i < argc; _i++) { \ 697db96d56Sopenharmony_ci Py_DECREF(out[_i]); \ 707db96d56Sopenharmony_ci } \ 717db96d56Sopenharmony_ci return NULL; \ 727db96d56Sopenharmony_ci } \ 737db96d56Sopenharmony_ci for (int _i = 0; _i < argc; _i++) { \ 747db96d56Sopenharmony_ci PyTuple_SET_ITEM(tuple, _i, out[_i]); \ 757db96d56Sopenharmony_ci } \ 767db96d56Sopenharmony_ci return tuple; \ 777db96d56Sopenharmony_ci } while (0) 787db96d56Sopenharmony_ci 797db96d56Sopenharmony_ci 807db96d56Sopenharmony_ci/*[clinic input] 817db96d56Sopenharmony_cimodule _testclinic 827db96d56Sopenharmony_ci[clinic start generated code]*/ 837db96d56Sopenharmony_ci/*[clinic end generated code: output=da39a3ee5e6b4b0d input=d4981b80d6efdb12]*/ 847db96d56Sopenharmony_ci 857db96d56Sopenharmony_ci 867db96d56Sopenharmony_ci/*[clinic input] 877db96d56Sopenharmony_citest_empty_function 887db96d56Sopenharmony_ci 897db96d56Sopenharmony_ci[clinic start generated code]*/ 907db96d56Sopenharmony_ci 917db96d56Sopenharmony_cistatic PyObject * 927db96d56Sopenharmony_citest_empty_function_impl(PyObject *module) 937db96d56Sopenharmony_ci/*[clinic end generated code: output=0f8aeb3ddced55cb input=0dd7048651ad4ae4]*/ 947db96d56Sopenharmony_ci{ 957db96d56Sopenharmony_ci Py_RETURN_NONE; 967db96d56Sopenharmony_ci} 977db96d56Sopenharmony_ci 987db96d56Sopenharmony_ci 997db96d56Sopenharmony_ci/*[clinic input] 1007db96d56Sopenharmony_ciobjects_converter 1017db96d56Sopenharmony_ci 1027db96d56Sopenharmony_ci a: object 1037db96d56Sopenharmony_ci b: object = NULL 1047db96d56Sopenharmony_ci / 1057db96d56Sopenharmony_ci 1067db96d56Sopenharmony_ci[clinic start generated code]*/ 1077db96d56Sopenharmony_ci 1087db96d56Sopenharmony_cistatic PyObject * 1097db96d56Sopenharmony_ciobjects_converter_impl(PyObject *module, PyObject *a, PyObject *b) 1107db96d56Sopenharmony_ci/*[clinic end generated code: output=3f9c9415ec86c695 input=1533b1bd94187de4]*/ 1117db96d56Sopenharmony_ci{ 1127db96d56Sopenharmony_ci return pack_arguments_newref(2, a, b); 1137db96d56Sopenharmony_ci} 1147db96d56Sopenharmony_ci 1157db96d56Sopenharmony_ci 1167db96d56Sopenharmony_ci/*[clinic input] 1177db96d56Sopenharmony_cibytes_object_converter 1187db96d56Sopenharmony_ci 1197db96d56Sopenharmony_ci a: PyBytesObject 1207db96d56Sopenharmony_ci / 1217db96d56Sopenharmony_ci 1227db96d56Sopenharmony_ci[clinic start generated code]*/ 1237db96d56Sopenharmony_ci 1247db96d56Sopenharmony_cistatic PyObject * 1257db96d56Sopenharmony_cibytes_object_converter_impl(PyObject *module, PyBytesObject *a) 1267db96d56Sopenharmony_ci/*[clinic end generated code: output=7732da869d74b784 input=94211751e7996236]*/ 1277db96d56Sopenharmony_ci{ 1287db96d56Sopenharmony_ci if (!PyBytes_Check(a)) { 1297db96d56Sopenharmony_ci PyErr_SetString(PyExc_AssertionError, 1307db96d56Sopenharmony_ci "argument a is not a PyBytesObject"); 1317db96d56Sopenharmony_ci return NULL; 1327db96d56Sopenharmony_ci } 1337db96d56Sopenharmony_ci return pack_arguments_newref(1, a); 1347db96d56Sopenharmony_ci} 1357db96d56Sopenharmony_ci 1367db96d56Sopenharmony_ci 1377db96d56Sopenharmony_ci/*[clinic input] 1387db96d56Sopenharmony_cibyte_array_object_converter 1397db96d56Sopenharmony_ci 1407db96d56Sopenharmony_ci a: PyByteArrayObject 1417db96d56Sopenharmony_ci / 1427db96d56Sopenharmony_ci 1437db96d56Sopenharmony_ci[clinic start generated code]*/ 1447db96d56Sopenharmony_ci 1457db96d56Sopenharmony_cistatic PyObject * 1467db96d56Sopenharmony_cibyte_array_object_converter_impl(PyObject *module, PyByteArrayObject *a) 1477db96d56Sopenharmony_ci/*[clinic end generated code: output=51f15c76f302b1f7 input=b04d253db51c6f56]*/ 1487db96d56Sopenharmony_ci{ 1497db96d56Sopenharmony_ci if (!PyByteArray_Check(a)) { 1507db96d56Sopenharmony_ci PyErr_SetString(PyExc_AssertionError, 1517db96d56Sopenharmony_ci "argument a is not a PyByteArrayObject"); 1527db96d56Sopenharmony_ci return NULL; 1537db96d56Sopenharmony_ci } 1547db96d56Sopenharmony_ci return pack_arguments_newref(1, a); 1557db96d56Sopenharmony_ci} 1567db96d56Sopenharmony_ci 1577db96d56Sopenharmony_ci 1587db96d56Sopenharmony_ci/*[clinic input] 1597db96d56Sopenharmony_ciunicode_converter 1607db96d56Sopenharmony_ci 1617db96d56Sopenharmony_ci a: unicode 1627db96d56Sopenharmony_ci / 1637db96d56Sopenharmony_ci 1647db96d56Sopenharmony_ci[clinic start generated code]*/ 1657db96d56Sopenharmony_ci 1667db96d56Sopenharmony_cistatic PyObject * 1677db96d56Sopenharmony_ciunicode_converter_impl(PyObject *module, PyObject *a) 1687db96d56Sopenharmony_ci/*[clinic end generated code: output=1b4a4adbb6ac6e34 input=de7b5adbf07435ba]*/ 1697db96d56Sopenharmony_ci{ 1707db96d56Sopenharmony_ci if (!PyUnicode_Check(a)) { 1717db96d56Sopenharmony_ci PyErr_SetString(PyExc_AssertionError, 1727db96d56Sopenharmony_ci "argument a is not a unicode object"); 1737db96d56Sopenharmony_ci return NULL; 1747db96d56Sopenharmony_ci } 1757db96d56Sopenharmony_ci return pack_arguments_newref(1, a); 1767db96d56Sopenharmony_ci} 1777db96d56Sopenharmony_ci 1787db96d56Sopenharmony_ci 1797db96d56Sopenharmony_ci/*[clinic input] 1807db96d56Sopenharmony_cibool_converter 1817db96d56Sopenharmony_ci 1827db96d56Sopenharmony_ci a: bool = True 1837db96d56Sopenharmony_ci b: bool(accept={object}) = True 1847db96d56Sopenharmony_ci c: bool(accept={int}) = True 1857db96d56Sopenharmony_ci / 1867db96d56Sopenharmony_ci 1877db96d56Sopenharmony_ci[clinic start generated code]*/ 1887db96d56Sopenharmony_ci 1897db96d56Sopenharmony_cistatic PyObject * 1907db96d56Sopenharmony_cibool_converter_impl(PyObject *module, int a, int b, int c) 1917db96d56Sopenharmony_ci/*[clinic end generated code: output=17005b0c29afd590 input=7f6537705b2f32f4]*/ 1927db96d56Sopenharmony_ci{ 1937db96d56Sopenharmony_ci PyObject *obj_a = a ? Py_True : Py_False; 1947db96d56Sopenharmony_ci PyObject *obj_b = b ? Py_True : Py_False; 1957db96d56Sopenharmony_ci PyObject *obj_c = c ? Py_True : Py_False; 1967db96d56Sopenharmony_ci return pack_arguments_newref(3, obj_a, obj_b, obj_c); 1977db96d56Sopenharmony_ci} 1987db96d56Sopenharmony_ci 1997db96d56Sopenharmony_ci 2007db96d56Sopenharmony_ci/*[clinic input] 2017db96d56Sopenharmony_cichar_converter 2027db96d56Sopenharmony_ci 2037db96d56Sopenharmony_ci a: char = b'A' 2047db96d56Sopenharmony_ci b: char = b'\a' 2057db96d56Sopenharmony_ci c: char = b'\b' 2067db96d56Sopenharmony_ci d: char = b'\t' 2077db96d56Sopenharmony_ci e: char = b'\n' 2087db96d56Sopenharmony_ci f: char = b'\v' 2097db96d56Sopenharmony_ci g: char = b'\f' 2107db96d56Sopenharmony_ci h: char = b'\r' 2117db96d56Sopenharmony_ci i: char = b'"' 2127db96d56Sopenharmony_ci j: char = b"'" 2137db96d56Sopenharmony_ci k: char = b'?' 2147db96d56Sopenharmony_ci l: char = b'\\' 2157db96d56Sopenharmony_ci m: char = b'\000' 2167db96d56Sopenharmony_ci n: char = b'\377' 2177db96d56Sopenharmony_ci / 2187db96d56Sopenharmony_ci 2197db96d56Sopenharmony_ci[clinic start generated code]*/ 2207db96d56Sopenharmony_ci 2217db96d56Sopenharmony_cistatic PyObject * 2227db96d56Sopenharmony_cichar_converter_impl(PyObject *module, char a, char b, char c, char d, char e, 2237db96d56Sopenharmony_ci char f, char g, char h, char i, char j, char k, char l, 2247db96d56Sopenharmony_ci char m, char n) 2257db96d56Sopenharmony_ci/*[clinic end generated code: output=f929dbd2e55a9871 input=b601bc5bc7fe85e3]*/ 2267db96d56Sopenharmony_ci{ 2277db96d56Sopenharmony_ci RETURN_PACKED_ARGS(14, PyLong_FromUnsignedLong, unsigned char, 2287db96d56Sopenharmony_ci a, b, c, d, e, f, g, h, i, j, k, l, m, n); 2297db96d56Sopenharmony_ci} 2307db96d56Sopenharmony_ci 2317db96d56Sopenharmony_ci 2327db96d56Sopenharmony_ci/*[clinic input] 2337db96d56Sopenharmony_ciunsigned_char_converter 2347db96d56Sopenharmony_ci 2357db96d56Sopenharmony_ci a: unsigned_char = 12 2367db96d56Sopenharmony_ci b: unsigned_char(bitwise=False) = 34 2377db96d56Sopenharmony_ci c: unsigned_char(bitwise=True) = 56 2387db96d56Sopenharmony_ci / 2397db96d56Sopenharmony_ci 2407db96d56Sopenharmony_ci[clinic start generated code]*/ 2417db96d56Sopenharmony_ci 2427db96d56Sopenharmony_cistatic PyObject * 2437db96d56Sopenharmony_ciunsigned_char_converter_impl(PyObject *module, unsigned char a, 2447db96d56Sopenharmony_ci unsigned char b, unsigned char c) 2457db96d56Sopenharmony_ci/*[clinic end generated code: output=490af3b39ce0b199 input=e859502fbe0b3185]*/ 2467db96d56Sopenharmony_ci{ 2477db96d56Sopenharmony_ci RETURN_PACKED_ARGS(3, PyLong_FromUnsignedLong, unsigned char, a, b, c); 2487db96d56Sopenharmony_ci} 2497db96d56Sopenharmony_ci 2507db96d56Sopenharmony_ci 2517db96d56Sopenharmony_ci/*[clinic input] 2527db96d56Sopenharmony_cishort_converter 2537db96d56Sopenharmony_ci 2547db96d56Sopenharmony_ci a: short = 12 2557db96d56Sopenharmony_ci / 2567db96d56Sopenharmony_ci 2577db96d56Sopenharmony_ci[clinic start generated code]*/ 2587db96d56Sopenharmony_ci 2597db96d56Sopenharmony_cistatic PyObject * 2607db96d56Sopenharmony_cishort_converter_impl(PyObject *module, short a) 2617db96d56Sopenharmony_ci/*[clinic end generated code: output=1ebb7ddb64248988 input=b4e2309a66f650ae]*/ 2627db96d56Sopenharmony_ci{ 2637db96d56Sopenharmony_ci RETURN_PACKED_ARGS(1, PyLong_FromLong, long, a); 2647db96d56Sopenharmony_ci} 2657db96d56Sopenharmony_ci 2667db96d56Sopenharmony_ci 2677db96d56Sopenharmony_ci/*[clinic input] 2687db96d56Sopenharmony_ciunsigned_short_converter 2697db96d56Sopenharmony_ci 2707db96d56Sopenharmony_ci a: unsigned_short = 12 2717db96d56Sopenharmony_ci b: unsigned_short(bitwise=False) = 34 2727db96d56Sopenharmony_ci c: unsigned_short(bitwise=True) = 56 2737db96d56Sopenharmony_ci / 2747db96d56Sopenharmony_ci 2757db96d56Sopenharmony_ci[clinic start generated code]*/ 2767db96d56Sopenharmony_ci 2777db96d56Sopenharmony_cistatic PyObject * 2787db96d56Sopenharmony_ciunsigned_short_converter_impl(PyObject *module, unsigned short a, 2797db96d56Sopenharmony_ci unsigned short b, unsigned short c) 2807db96d56Sopenharmony_ci/*[clinic end generated code: output=5f92cc72fc8707a7 input=9d15cd11e741d0c6]*/ 2817db96d56Sopenharmony_ci{ 2827db96d56Sopenharmony_ci RETURN_PACKED_ARGS(3, PyLong_FromUnsignedLong, unsigned long, a, b, c); 2837db96d56Sopenharmony_ci} 2847db96d56Sopenharmony_ci 2857db96d56Sopenharmony_ci 2867db96d56Sopenharmony_ci/*[clinic input] 2877db96d56Sopenharmony_ciint_converter 2887db96d56Sopenharmony_ci 2897db96d56Sopenharmony_ci a: int = 12 2907db96d56Sopenharmony_ci b: int(accept={int}) = 34 2917db96d56Sopenharmony_ci c: int(accept={str}) = 45 2927db96d56Sopenharmony_ci / 2937db96d56Sopenharmony_ci 2947db96d56Sopenharmony_ci[clinic start generated code]*/ 2957db96d56Sopenharmony_ci 2967db96d56Sopenharmony_cistatic PyObject * 2977db96d56Sopenharmony_ciint_converter_impl(PyObject *module, int a, int b, int c) 2987db96d56Sopenharmony_ci/*[clinic end generated code: output=8e56b59be7d0c306 input=a1dbc6344853db7a]*/ 2997db96d56Sopenharmony_ci{ 3007db96d56Sopenharmony_ci RETURN_PACKED_ARGS(3, PyLong_FromLong, long, a, b, c); 3017db96d56Sopenharmony_ci} 3027db96d56Sopenharmony_ci 3037db96d56Sopenharmony_ci 3047db96d56Sopenharmony_ci/*[clinic input] 3057db96d56Sopenharmony_ciunsigned_int_converter 3067db96d56Sopenharmony_ci 3077db96d56Sopenharmony_ci a: unsigned_int = 12 3087db96d56Sopenharmony_ci b: unsigned_int(bitwise=False) = 34 3097db96d56Sopenharmony_ci c: unsigned_int(bitwise=True) = 56 3107db96d56Sopenharmony_ci / 3117db96d56Sopenharmony_ci 3127db96d56Sopenharmony_ci[clinic start generated code]*/ 3137db96d56Sopenharmony_ci 3147db96d56Sopenharmony_cistatic PyObject * 3157db96d56Sopenharmony_ciunsigned_int_converter_impl(PyObject *module, unsigned int a, unsigned int b, 3167db96d56Sopenharmony_ci unsigned int c) 3177db96d56Sopenharmony_ci/*[clinic end generated code: output=399a57a05c494cc7 input=8427ed9a3f96272d]*/ 3187db96d56Sopenharmony_ci{ 3197db96d56Sopenharmony_ci RETURN_PACKED_ARGS(3, PyLong_FromUnsignedLong, unsigned long, a, b, c); 3207db96d56Sopenharmony_ci} 3217db96d56Sopenharmony_ci 3227db96d56Sopenharmony_ci 3237db96d56Sopenharmony_ci/*[clinic input] 3247db96d56Sopenharmony_cilong_converter 3257db96d56Sopenharmony_ci 3267db96d56Sopenharmony_ci a: long = 12 3277db96d56Sopenharmony_ci / 3287db96d56Sopenharmony_ci 3297db96d56Sopenharmony_ci[clinic start generated code]*/ 3307db96d56Sopenharmony_ci 3317db96d56Sopenharmony_cistatic PyObject * 3327db96d56Sopenharmony_cilong_converter_impl(PyObject *module, long a) 3337db96d56Sopenharmony_ci/*[clinic end generated code: output=9663d936a652707a input=84ad0ef28f24bd85]*/ 3347db96d56Sopenharmony_ci{ 3357db96d56Sopenharmony_ci RETURN_PACKED_ARGS(1, PyLong_FromLong, long, a); 3367db96d56Sopenharmony_ci} 3377db96d56Sopenharmony_ci 3387db96d56Sopenharmony_ci 3397db96d56Sopenharmony_ci/*[clinic input] 3407db96d56Sopenharmony_ciunsigned_long_converter 3417db96d56Sopenharmony_ci 3427db96d56Sopenharmony_ci a: unsigned_long = 12 3437db96d56Sopenharmony_ci b: unsigned_long(bitwise=False) = 34 3447db96d56Sopenharmony_ci c: unsigned_long(bitwise=True) = 56 3457db96d56Sopenharmony_ci / 3467db96d56Sopenharmony_ci 3477db96d56Sopenharmony_ci[clinic start generated code]*/ 3487db96d56Sopenharmony_ci 3497db96d56Sopenharmony_cistatic PyObject * 3507db96d56Sopenharmony_ciunsigned_long_converter_impl(PyObject *module, unsigned long a, 3517db96d56Sopenharmony_ci unsigned long b, unsigned long c) 3527db96d56Sopenharmony_ci/*[clinic end generated code: output=120b82ea9ebd93a8 input=440dd6f1817f5d91]*/ 3537db96d56Sopenharmony_ci{ 3547db96d56Sopenharmony_ci RETURN_PACKED_ARGS(3, PyLong_FromUnsignedLong, unsigned long, a, b, c); 3557db96d56Sopenharmony_ci} 3567db96d56Sopenharmony_ci 3577db96d56Sopenharmony_ci 3587db96d56Sopenharmony_ci/*[clinic input] 3597db96d56Sopenharmony_cilong_long_converter 3607db96d56Sopenharmony_ci 3617db96d56Sopenharmony_ci a: long_long = 12 3627db96d56Sopenharmony_ci / 3637db96d56Sopenharmony_ci 3647db96d56Sopenharmony_ci[clinic start generated code]*/ 3657db96d56Sopenharmony_ci 3667db96d56Sopenharmony_cistatic PyObject * 3677db96d56Sopenharmony_cilong_long_converter_impl(PyObject *module, long long a) 3687db96d56Sopenharmony_ci/*[clinic end generated code: output=5fb5f2220770c3e1 input=730fcb3eecf4d993]*/ 3697db96d56Sopenharmony_ci{ 3707db96d56Sopenharmony_ci RETURN_PACKED_ARGS(1, PyLong_FromLongLong, long long, a); 3717db96d56Sopenharmony_ci} 3727db96d56Sopenharmony_ci 3737db96d56Sopenharmony_ci 3747db96d56Sopenharmony_ci/*[clinic input] 3757db96d56Sopenharmony_ciunsigned_long_long_converter 3767db96d56Sopenharmony_ci 3777db96d56Sopenharmony_ci a: unsigned_long_long = 12 3787db96d56Sopenharmony_ci b: unsigned_long_long(bitwise=False) = 34 3797db96d56Sopenharmony_ci c: unsigned_long_long(bitwise=True) = 56 3807db96d56Sopenharmony_ci / 3817db96d56Sopenharmony_ci 3827db96d56Sopenharmony_ci[clinic start generated code]*/ 3837db96d56Sopenharmony_ci 3847db96d56Sopenharmony_cistatic PyObject * 3857db96d56Sopenharmony_ciunsigned_long_long_converter_impl(PyObject *module, unsigned long long a, 3867db96d56Sopenharmony_ci unsigned long long b, unsigned long long c) 3877db96d56Sopenharmony_ci/*[clinic end generated code: output=65b7273e63501762 input=300737b0bdb230e9]*/ 3887db96d56Sopenharmony_ci{ 3897db96d56Sopenharmony_ci RETURN_PACKED_ARGS(3, PyLong_FromUnsignedLongLong, unsigned long long, 3907db96d56Sopenharmony_ci a, b, c); 3917db96d56Sopenharmony_ci} 3927db96d56Sopenharmony_ci 3937db96d56Sopenharmony_ci 3947db96d56Sopenharmony_ci/*[clinic input] 3957db96d56Sopenharmony_cipy_ssize_t_converter 3967db96d56Sopenharmony_ci 3977db96d56Sopenharmony_ci a: Py_ssize_t = 12 3987db96d56Sopenharmony_ci b: Py_ssize_t(accept={int}) = 34 3997db96d56Sopenharmony_ci c: Py_ssize_t(accept={int, NoneType}) = 56 4007db96d56Sopenharmony_ci / 4017db96d56Sopenharmony_ci 4027db96d56Sopenharmony_ci[clinic start generated code]*/ 4037db96d56Sopenharmony_ci 4047db96d56Sopenharmony_cistatic PyObject * 4057db96d56Sopenharmony_cipy_ssize_t_converter_impl(PyObject *module, Py_ssize_t a, Py_ssize_t b, 4067db96d56Sopenharmony_ci Py_ssize_t c) 4077db96d56Sopenharmony_ci/*[clinic end generated code: output=ce252143e0ed0372 input=76d0f342e9317a1f]*/ 4087db96d56Sopenharmony_ci{ 4097db96d56Sopenharmony_ci RETURN_PACKED_ARGS(3, PyLong_FromSsize_t, Py_ssize_t, a, b, c); 4107db96d56Sopenharmony_ci} 4117db96d56Sopenharmony_ci 4127db96d56Sopenharmony_ci 4137db96d56Sopenharmony_ci/*[clinic input] 4147db96d56Sopenharmony_cislice_index_converter 4157db96d56Sopenharmony_ci 4167db96d56Sopenharmony_ci a: slice_index = 12 4177db96d56Sopenharmony_ci b: slice_index(accept={int}) = 34 4187db96d56Sopenharmony_ci c: slice_index(accept={int, NoneType}) = 56 4197db96d56Sopenharmony_ci / 4207db96d56Sopenharmony_ci 4217db96d56Sopenharmony_ci[clinic start generated code]*/ 4227db96d56Sopenharmony_ci 4237db96d56Sopenharmony_cistatic PyObject * 4247db96d56Sopenharmony_cislice_index_converter_impl(PyObject *module, Py_ssize_t a, Py_ssize_t b, 4257db96d56Sopenharmony_ci Py_ssize_t c) 4267db96d56Sopenharmony_ci/*[clinic end generated code: output=923c6cac77666a6b input=64f99f3f83265e47]*/ 4277db96d56Sopenharmony_ci{ 4287db96d56Sopenharmony_ci RETURN_PACKED_ARGS(3, PyLong_FromSsize_t, Py_ssize_t, a, b, c); 4297db96d56Sopenharmony_ci} 4307db96d56Sopenharmony_ci 4317db96d56Sopenharmony_ci 4327db96d56Sopenharmony_ci/*[clinic input] 4337db96d56Sopenharmony_cisize_t_converter 4347db96d56Sopenharmony_ci 4357db96d56Sopenharmony_ci a: size_t = 12 4367db96d56Sopenharmony_ci / 4377db96d56Sopenharmony_ci 4387db96d56Sopenharmony_ci[clinic start generated code]*/ 4397db96d56Sopenharmony_ci 4407db96d56Sopenharmony_cistatic PyObject * 4417db96d56Sopenharmony_cisize_t_converter_impl(PyObject *module, size_t a) 4427db96d56Sopenharmony_ci/*[clinic end generated code: output=412b5b7334ab444d input=83ae7d9171fbf208]*/ 4437db96d56Sopenharmony_ci{ 4447db96d56Sopenharmony_ci RETURN_PACKED_ARGS(1, PyLong_FromSize_t, size_t, a); 4457db96d56Sopenharmony_ci} 4467db96d56Sopenharmony_ci 4477db96d56Sopenharmony_ci 4487db96d56Sopenharmony_ci/*[clinic input] 4497db96d56Sopenharmony_cifloat_converter 4507db96d56Sopenharmony_ci 4517db96d56Sopenharmony_ci a: float = 12.5 4527db96d56Sopenharmony_ci / 4537db96d56Sopenharmony_ci 4547db96d56Sopenharmony_ci[clinic start generated code]*/ 4557db96d56Sopenharmony_ci 4567db96d56Sopenharmony_cistatic PyObject * 4577db96d56Sopenharmony_cifloat_converter_impl(PyObject *module, float a) 4587db96d56Sopenharmony_ci/*[clinic end generated code: output=1c98f64f2cf1d55c input=a625b59ad68047d8]*/ 4597db96d56Sopenharmony_ci{ 4607db96d56Sopenharmony_ci RETURN_PACKED_ARGS(1, PyFloat_FromDouble, double, a); 4617db96d56Sopenharmony_ci} 4627db96d56Sopenharmony_ci 4637db96d56Sopenharmony_ci 4647db96d56Sopenharmony_ci/*[clinic input] 4657db96d56Sopenharmony_cidouble_converter 4667db96d56Sopenharmony_ci 4677db96d56Sopenharmony_ci a: double = 12.5 4687db96d56Sopenharmony_ci / 4697db96d56Sopenharmony_ci 4707db96d56Sopenharmony_ci[clinic start generated code]*/ 4717db96d56Sopenharmony_ci 4727db96d56Sopenharmony_cistatic PyObject * 4737db96d56Sopenharmony_cidouble_converter_impl(PyObject *module, double a) 4747db96d56Sopenharmony_ci/*[clinic end generated code: output=a4e8532d284d035d input=098df188f24e7c62]*/ 4757db96d56Sopenharmony_ci{ 4767db96d56Sopenharmony_ci RETURN_PACKED_ARGS(1, PyFloat_FromDouble, double, a); 4777db96d56Sopenharmony_ci} 4787db96d56Sopenharmony_ci 4797db96d56Sopenharmony_ci 4807db96d56Sopenharmony_ci/*[clinic input] 4817db96d56Sopenharmony_cipy_complex_converter 4827db96d56Sopenharmony_ci 4837db96d56Sopenharmony_ci a: Py_complex 4847db96d56Sopenharmony_ci / 4857db96d56Sopenharmony_ci 4867db96d56Sopenharmony_ci[clinic start generated code]*/ 4877db96d56Sopenharmony_ci 4887db96d56Sopenharmony_cistatic PyObject * 4897db96d56Sopenharmony_cipy_complex_converter_impl(PyObject *module, Py_complex a) 4907db96d56Sopenharmony_ci/*[clinic end generated code: output=9e6ca2eb53b14846 input=e9148a8ca1dbf195]*/ 4917db96d56Sopenharmony_ci{ 4927db96d56Sopenharmony_ci RETURN_PACKED_ARGS(1, PyComplex_FromCComplex, Py_complex, a); 4937db96d56Sopenharmony_ci} 4947db96d56Sopenharmony_ci 4957db96d56Sopenharmony_ci 4967db96d56Sopenharmony_ci/*[clinic input] 4977db96d56Sopenharmony_cistr_converter 4987db96d56Sopenharmony_ci 4997db96d56Sopenharmony_ci a: str = "a" 5007db96d56Sopenharmony_ci b: str(accept={robuffer}) = "b" 5017db96d56Sopenharmony_ci c: str(accept={robuffer, str}, zeroes=True) = "c" 5027db96d56Sopenharmony_ci / 5037db96d56Sopenharmony_ci 5047db96d56Sopenharmony_ci[clinic start generated code]*/ 5057db96d56Sopenharmony_ci 5067db96d56Sopenharmony_cistatic PyObject * 5077db96d56Sopenharmony_cistr_converter_impl(PyObject *module, const char *a, const char *b, 5087db96d56Sopenharmony_ci const char *c, Py_ssize_t c_length) 5097db96d56Sopenharmony_ci/*[clinic end generated code: output=475bea40548c8cd6 input=bff2656c92ee25de]*/ 5107db96d56Sopenharmony_ci{ 5117db96d56Sopenharmony_ci assert(!PyErr_Occurred()); 5127db96d56Sopenharmony_ci PyObject *out[3] = {NULL,}; 5137db96d56Sopenharmony_ci int i = 0; 5147db96d56Sopenharmony_ci PyObject *arg; 5157db96d56Sopenharmony_ci 5167db96d56Sopenharmony_ci arg = PyUnicode_FromString(a); 5177db96d56Sopenharmony_ci assert(arg || PyErr_Occurred()); 5187db96d56Sopenharmony_ci if (!arg) { 5197db96d56Sopenharmony_ci goto error; 5207db96d56Sopenharmony_ci } 5217db96d56Sopenharmony_ci out[i++] = arg; 5227db96d56Sopenharmony_ci 5237db96d56Sopenharmony_ci arg = PyUnicode_FromString(b); 5247db96d56Sopenharmony_ci assert(arg || PyErr_Occurred()); 5257db96d56Sopenharmony_ci if (!arg) { 5267db96d56Sopenharmony_ci goto error; 5277db96d56Sopenharmony_ci } 5287db96d56Sopenharmony_ci out[i++] = arg; 5297db96d56Sopenharmony_ci 5307db96d56Sopenharmony_ci arg = PyUnicode_FromStringAndSize(c, c_length); 5317db96d56Sopenharmony_ci assert(arg || PyErr_Occurred()); 5327db96d56Sopenharmony_ci if (!arg) { 5337db96d56Sopenharmony_ci goto error; 5347db96d56Sopenharmony_ci } 5357db96d56Sopenharmony_ci out[i++] = arg; 5367db96d56Sopenharmony_ci 5377db96d56Sopenharmony_ci PyObject *tuple = PyTuple_New(3); 5387db96d56Sopenharmony_ci if (!tuple) { 5397db96d56Sopenharmony_ci goto error; 5407db96d56Sopenharmony_ci } 5417db96d56Sopenharmony_ci for (int j = 0; j < 3; j++) { 5427db96d56Sopenharmony_ci PyTuple_SET_ITEM(tuple, j, out[j]); 5437db96d56Sopenharmony_ci } 5447db96d56Sopenharmony_ci return tuple; 5457db96d56Sopenharmony_ci 5467db96d56Sopenharmony_cierror: 5477db96d56Sopenharmony_ci for (int j = 0; j < i; j++) { 5487db96d56Sopenharmony_ci Py_DECREF(out[j]); 5497db96d56Sopenharmony_ci } 5507db96d56Sopenharmony_ci return NULL; 5517db96d56Sopenharmony_ci} 5527db96d56Sopenharmony_ci 5537db96d56Sopenharmony_ci 5547db96d56Sopenharmony_ci/*[clinic input] 5557db96d56Sopenharmony_cistr_converter_encoding 5567db96d56Sopenharmony_ci 5577db96d56Sopenharmony_ci a: str(encoding="idna") 5587db96d56Sopenharmony_ci b: str(encoding="idna", accept={bytes, bytearray, str}) 5597db96d56Sopenharmony_ci c: str(encoding="idna", accept={bytes, bytearray, str}, zeroes=True) 5607db96d56Sopenharmony_ci / 5617db96d56Sopenharmony_ci 5627db96d56Sopenharmony_ci[clinic start generated code]*/ 5637db96d56Sopenharmony_ci 5647db96d56Sopenharmony_cistatic PyObject * 5657db96d56Sopenharmony_cistr_converter_encoding_impl(PyObject *module, char *a, char *b, char *c, 5667db96d56Sopenharmony_ci Py_ssize_t c_length) 5677db96d56Sopenharmony_ci/*[clinic end generated code: output=af68766049248a1c input=0c5cf5159d0e870d]*/ 5687db96d56Sopenharmony_ci{ 5697db96d56Sopenharmony_ci assert(!PyErr_Occurred()); 5707db96d56Sopenharmony_ci PyObject *out[3] = {NULL,}; 5717db96d56Sopenharmony_ci int i = 0; 5727db96d56Sopenharmony_ci PyObject *arg; 5737db96d56Sopenharmony_ci 5747db96d56Sopenharmony_ci arg = PyUnicode_FromString(a); 5757db96d56Sopenharmony_ci assert(arg || PyErr_Occurred()); 5767db96d56Sopenharmony_ci if (!arg) { 5777db96d56Sopenharmony_ci goto error; 5787db96d56Sopenharmony_ci } 5797db96d56Sopenharmony_ci out[i++] = arg; 5807db96d56Sopenharmony_ci 5817db96d56Sopenharmony_ci arg = PyUnicode_FromString(b); 5827db96d56Sopenharmony_ci assert(arg || PyErr_Occurred()); 5837db96d56Sopenharmony_ci if (!arg) { 5847db96d56Sopenharmony_ci goto error; 5857db96d56Sopenharmony_ci } 5867db96d56Sopenharmony_ci out[i++] = arg; 5877db96d56Sopenharmony_ci 5887db96d56Sopenharmony_ci arg = PyUnicode_FromStringAndSize(c, c_length); 5897db96d56Sopenharmony_ci assert(arg || PyErr_Occurred()); 5907db96d56Sopenharmony_ci if (!arg) { 5917db96d56Sopenharmony_ci goto error; 5927db96d56Sopenharmony_ci } 5937db96d56Sopenharmony_ci out[i++] = arg; 5947db96d56Sopenharmony_ci 5957db96d56Sopenharmony_ci PyObject *tuple = PyTuple_New(3); 5967db96d56Sopenharmony_ci if (!tuple) { 5977db96d56Sopenharmony_ci goto error; 5987db96d56Sopenharmony_ci } 5997db96d56Sopenharmony_ci for (int j = 0; j < 3; j++) { 6007db96d56Sopenharmony_ci PyTuple_SET_ITEM(tuple, j, out[j]); 6017db96d56Sopenharmony_ci } 6027db96d56Sopenharmony_ci return tuple; 6037db96d56Sopenharmony_ci 6047db96d56Sopenharmony_cierror: 6057db96d56Sopenharmony_ci for (int j = 0; j < i; j++) { 6067db96d56Sopenharmony_ci Py_DECREF(out[j]); 6077db96d56Sopenharmony_ci } 6087db96d56Sopenharmony_ci return NULL; 6097db96d56Sopenharmony_ci} 6107db96d56Sopenharmony_ci 6117db96d56Sopenharmony_ci 6127db96d56Sopenharmony_cistatic PyObject * 6137db96d56Sopenharmony_cibytes_from_buffer(Py_buffer *buf) 6147db96d56Sopenharmony_ci{ 6157db96d56Sopenharmony_ci PyObject *bytes_obj = PyBytes_FromStringAndSize(NULL, buf->len); 6167db96d56Sopenharmony_ci if (!bytes_obj) { 6177db96d56Sopenharmony_ci return NULL; 6187db96d56Sopenharmony_ci } 6197db96d56Sopenharmony_ci void *bytes_obj_buf = ((PyBytesObject *)bytes_obj)->ob_sval; 6207db96d56Sopenharmony_ci if (PyBuffer_ToContiguous(bytes_obj_buf, buf, buf->len, 'C') < 0) { 6217db96d56Sopenharmony_ci Py_DECREF(bytes_obj); 6227db96d56Sopenharmony_ci return NULL; 6237db96d56Sopenharmony_ci } 6247db96d56Sopenharmony_ci return bytes_obj; 6257db96d56Sopenharmony_ci} 6267db96d56Sopenharmony_ci 6277db96d56Sopenharmony_ci/*[clinic input] 6287db96d56Sopenharmony_cipy_buffer_converter 6297db96d56Sopenharmony_ci 6307db96d56Sopenharmony_ci a: Py_buffer(accept={str, buffer, NoneType}) 6317db96d56Sopenharmony_ci b: Py_buffer(accept={rwbuffer}) 6327db96d56Sopenharmony_ci / 6337db96d56Sopenharmony_ci 6347db96d56Sopenharmony_ci[clinic start generated code]*/ 6357db96d56Sopenharmony_ci 6367db96d56Sopenharmony_cistatic PyObject * 6377db96d56Sopenharmony_cipy_buffer_converter_impl(PyObject *module, Py_buffer *a, Py_buffer *b) 6387db96d56Sopenharmony_ci/*[clinic end generated code: output=52fb13311e3d6d03 input=775de727de5c7421]*/ 6397db96d56Sopenharmony_ci{ 6407db96d56Sopenharmony_ci RETURN_PACKED_ARGS(2, bytes_from_buffer, Py_buffer *, a, b); 6417db96d56Sopenharmony_ci} 6427db96d56Sopenharmony_ci 6437db96d56Sopenharmony_ci 6447db96d56Sopenharmony_ci/*[clinic input] 6457db96d56Sopenharmony_cikeywords 6467db96d56Sopenharmony_ci 6477db96d56Sopenharmony_ci a: object 6487db96d56Sopenharmony_ci b: object 6497db96d56Sopenharmony_ci 6507db96d56Sopenharmony_ci[clinic start generated code]*/ 6517db96d56Sopenharmony_ci 6527db96d56Sopenharmony_cistatic PyObject * 6537db96d56Sopenharmony_cikeywords_impl(PyObject *module, PyObject *a, PyObject *b) 6547db96d56Sopenharmony_ci/*[clinic end generated code: output=850aaed53e26729e input=f44b89e718c1a93b]*/ 6557db96d56Sopenharmony_ci{ 6567db96d56Sopenharmony_ci return pack_arguments_newref(2, a, b); 6577db96d56Sopenharmony_ci} 6587db96d56Sopenharmony_ci 6597db96d56Sopenharmony_ci 6607db96d56Sopenharmony_ci/*[clinic input] 6617db96d56Sopenharmony_cikeywords_kwonly 6627db96d56Sopenharmony_ci 6637db96d56Sopenharmony_ci a: object 6647db96d56Sopenharmony_ci * 6657db96d56Sopenharmony_ci b: object 6667db96d56Sopenharmony_ci 6677db96d56Sopenharmony_ci[clinic start generated code]*/ 6687db96d56Sopenharmony_ci 6697db96d56Sopenharmony_cistatic PyObject * 6707db96d56Sopenharmony_cikeywords_kwonly_impl(PyObject *module, PyObject *a, PyObject *b) 6717db96d56Sopenharmony_ci/*[clinic end generated code: output=a45c48241da584dc input=1f08e39c3312b015]*/ 6727db96d56Sopenharmony_ci{ 6737db96d56Sopenharmony_ci return pack_arguments_newref(2, a, b); 6747db96d56Sopenharmony_ci} 6757db96d56Sopenharmony_ci 6767db96d56Sopenharmony_ci 6777db96d56Sopenharmony_ci/*[clinic input] 6787db96d56Sopenharmony_cikeywords_opt 6797db96d56Sopenharmony_ci 6807db96d56Sopenharmony_ci a: object 6817db96d56Sopenharmony_ci b: object = None 6827db96d56Sopenharmony_ci c: object = None 6837db96d56Sopenharmony_ci 6847db96d56Sopenharmony_ci[clinic start generated code]*/ 6857db96d56Sopenharmony_ci 6867db96d56Sopenharmony_cistatic PyObject * 6877db96d56Sopenharmony_cikeywords_opt_impl(PyObject *module, PyObject *a, PyObject *b, PyObject *c) 6887db96d56Sopenharmony_ci/*[clinic end generated code: output=25e4b67d91c76a66 input=b0ba0e4f04904556]*/ 6897db96d56Sopenharmony_ci{ 6907db96d56Sopenharmony_ci return pack_arguments_newref(3, a, b, c); 6917db96d56Sopenharmony_ci} 6927db96d56Sopenharmony_ci 6937db96d56Sopenharmony_ci 6947db96d56Sopenharmony_ci/*[clinic input] 6957db96d56Sopenharmony_cikeywords_opt_kwonly 6967db96d56Sopenharmony_ci 6977db96d56Sopenharmony_ci a: object 6987db96d56Sopenharmony_ci b: object = None 6997db96d56Sopenharmony_ci * 7007db96d56Sopenharmony_ci c: object = None 7017db96d56Sopenharmony_ci d: object = None 7027db96d56Sopenharmony_ci 7037db96d56Sopenharmony_ci[clinic start generated code]*/ 7047db96d56Sopenharmony_ci 7057db96d56Sopenharmony_cistatic PyObject * 7067db96d56Sopenharmony_cikeywords_opt_kwonly_impl(PyObject *module, PyObject *a, PyObject *b, 7077db96d56Sopenharmony_ci PyObject *c, PyObject *d) 7087db96d56Sopenharmony_ci/*[clinic end generated code: output=6aa5b655a6e9aeb0 input=f79da689d6c51076]*/ 7097db96d56Sopenharmony_ci{ 7107db96d56Sopenharmony_ci return pack_arguments_newref(4, a, b, c, d); 7117db96d56Sopenharmony_ci} 7127db96d56Sopenharmony_ci 7137db96d56Sopenharmony_ci 7147db96d56Sopenharmony_ci/*[clinic input] 7157db96d56Sopenharmony_cikeywords_kwonly_opt 7167db96d56Sopenharmony_ci 7177db96d56Sopenharmony_ci a: object 7187db96d56Sopenharmony_ci * 7197db96d56Sopenharmony_ci b: object = None 7207db96d56Sopenharmony_ci c: object = None 7217db96d56Sopenharmony_ci 7227db96d56Sopenharmony_ci[clinic start generated code]*/ 7237db96d56Sopenharmony_ci 7247db96d56Sopenharmony_cistatic PyObject * 7257db96d56Sopenharmony_cikeywords_kwonly_opt_impl(PyObject *module, PyObject *a, PyObject *b, 7267db96d56Sopenharmony_ci PyObject *c) 7277db96d56Sopenharmony_ci/*[clinic end generated code: output=707f78eb0f55c2b1 input=e0fa1a0e46dca791]*/ 7287db96d56Sopenharmony_ci{ 7297db96d56Sopenharmony_ci return pack_arguments_newref(3, a, b, c); 7307db96d56Sopenharmony_ci} 7317db96d56Sopenharmony_ci 7327db96d56Sopenharmony_ci 7337db96d56Sopenharmony_ci/*[clinic input] 7347db96d56Sopenharmony_ciposonly_keywords 7357db96d56Sopenharmony_ci 7367db96d56Sopenharmony_ci a: object 7377db96d56Sopenharmony_ci / 7387db96d56Sopenharmony_ci b: object 7397db96d56Sopenharmony_ci 7407db96d56Sopenharmony_ci[clinic start generated code]*/ 7417db96d56Sopenharmony_ci 7427db96d56Sopenharmony_cistatic PyObject * 7437db96d56Sopenharmony_ciposonly_keywords_impl(PyObject *module, PyObject *a, PyObject *b) 7447db96d56Sopenharmony_ci/*[clinic end generated code: output=6ac88f4a5f0bfc8d input=fde0a2f79fe82b06]*/ 7457db96d56Sopenharmony_ci{ 7467db96d56Sopenharmony_ci return pack_arguments_newref(2, a, b); 7477db96d56Sopenharmony_ci} 7487db96d56Sopenharmony_ci 7497db96d56Sopenharmony_ci 7507db96d56Sopenharmony_ci/*[clinic input] 7517db96d56Sopenharmony_ciposonly_kwonly 7527db96d56Sopenharmony_ci 7537db96d56Sopenharmony_ci a: object 7547db96d56Sopenharmony_ci / 7557db96d56Sopenharmony_ci * 7567db96d56Sopenharmony_ci b: object 7577db96d56Sopenharmony_ci 7587db96d56Sopenharmony_ci[clinic start generated code]*/ 7597db96d56Sopenharmony_ci 7607db96d56Sopenharmony_cistatic PyObject * 7617db96d56Sopenharmony_ciposonly_kwonly_impl(PyObject *module, PyObject *a, PyObject *b) 7627db96d56Sopenharmony_ci/*[clinic end generated code: output=483e6790d3482185 input=78b3712768da9a19]*/ 7637db96d56Sopenharmony_ci{ 7647db96d56Sopenharmony_ci return pack_arguments_newref(2, a, b); 7657db96d56Sopenharmony_ci} 7667db96d56Sopenharmony_ci 7677db96d56Sopenharmony_ci 7687db96d56Sopenharmony_ci/*[clinic input] 7697db96d56Sopenharmony_ciposonly_keywords_kwonly 7707db96d56Sopenharmony_ci 7717db96d56Sopenharmony_ci a: object 7727db96d56Sopenharmony_ci / 7737db96d56Sopenharmony_ci b: object 7747db96d56Sopenharmony_ci * 7757db96d56Sopenharmony_ci c: object 7767db96d56Sopenharmony_ci 7777db96d56Sopenharmony_ci[clinic start generated code]*/ 7787db96d56Sopenharmony_ci 7797db96d56Sopenharmony_cistatic PyObject * 7807db96d56Sopenharmony_ciposonly_keywords_kwonly_impl(PyObject *module, PyObject *a, PyObject *b, 7817db96d56Sopenharmony_ci PyObject *c) 7827db96d56Sopenharmony_ci/*[clinic end generated code: output=2fae573e8cc3fad8 input=a1ad5d2295eb803c]*/ 7837db96d56Sopenharmony_ci{ 7847db96d56Sopenharmony_ci return pack_arguments_newref(3, a, b, c); 7857db96d56Sopenharmony_ci} 7867db96d56Sopenharmony_ci 7877db96d56Sopenharmony_ci 7887db96d56Sopenharmony_ci/*[clinic input] 7897db96d56Sopenharmony_ciposonly_keywords_opt 7907db96d56Sopenharmony_ci 7917db96d56Sopenharmony_ci a: object 7927db96d56Sopenharmony_ci / 7937db96d56Sopenharmony_ci b: object 7947db96d56Sopenharmony_ci c: object = None 7957db96d56Sopenharmony_ci d: object = None 7967db96d56Sopenharmony_ci 7977db96d56Sopenharmony_ci[clinic start generated code]*/ 7987db96d56Sopenharmony_ci 7997db96d56Sopenharmony_cistatic PyObject * 8007db96d56Sopenharmony_ciposonly_keywords_opt_impl(PyObject *module, PyObject *a, PyObject *b, 8017db96d56Sopenharmony_ci PyObject *c, PyObject *d) 8027db96d56Sopenharmony_ci/*[clinic end generated code: output=f5eb66241bcf68fb input=51c10de2a120e279]*/ 8037db96d56Sopenharmony_ci{ 8047db96d56Sopenharmony_ci return pack_arguments_newref(4, a, b, c, d); 8057db96d56Sopenharmony_ci} 8067db96d56Sopenharmony_ci 8077db96d56Sopenharmony_ci 8087db96d56Sopenharmony_ci/*[clinic input] 8097db96d56Sopenharmony_ciposonly_opt_keywords_opt 8107db96d56Sopenharmony_ci 8117db96d56Sopenharmony_ci a: object 8127db96d56Sopenharmony_ci b: object = None 8137db96d56Sopenharmony_ci / 8147db96d56Sopenharmony_ci c: object = None 8157db96d56Sopenharmony_ci d: object = None 8167db96d56Sopenharmony_ci 8177db96d56Sopenharmony_ci[clinic start generated code]*/ 8187db96d56Sopenharmony_ci 8197db96d56Sopenharmony_cistatic PyObject * 8207db96d56Sopenharmony_ciposonly_opt_keywords_opt_impl(PyObject *module, PyObject *a, PyObject *b, 8217db96d56Sopenharmony_ci PyObject *c, PyObject *d) 8227db96d56Sopenharmony_ci/*[clinic end generated code: output=d54a30e549296ffd input=f408a1de7dfaf31f]*/ 8237db96d56Sopenharmony_ci{ 8247db96d56Sopenharmony_ci return pack_arguments_newref(4, a, b, c, d); 8257db96d56Sopenharmony_ci} 8267db96d56Sopenharmony_ci 8277db96d56Sopenharmony_ci 8287db96d56Sopenharmony_ci/*[clinic input] 8297db96d56Sopenharmony_ciposonly_kwonly_opt 8307db96d56Sopenharmony_ci 8317db96d56Sopenharmony_ci a: object 8327db96d56Sopenharmony_ci / 8337db96d56Sopenharmony_ci * 8347db96d56Sopenharmony_ci b: object 8357db96d56Sopenharmony_ci c: object = None 8367db96d56Sopenharmony_ci d: object = None 8377db96d56Sopenharmony_ci 8387db96d56Sopenharmony_ci[clinic start generated code]*/ 8397db96d56Sopenharmony_ci 8407db96d56Sopenharmony_cistatic PyObject * 8417db96d56Sopenharmony_ciposonly_kwonly_opt_impl(PyObject *module, PyObject *a, PyObject *b, 8427db96d56Sopenharmony_ci PyObject *c, PyObject *d) 8437db96d56Sopenharmony_ci/*[clinic end generated code: output=a20503fe36b4fd62 input=3494253975272f52]*/ 8447db96d56Sopenharmony_ci{ 8457db96d56Sopenharmony_ci return pack_arguments_newref(4, a, b, c, d); 8467db96d56Sopenharmony_ci} 8477db96d56Sopenharmony_ci 8487db96d56Sopenharmony_ci 8497db96d56Sopenharmony_ci/*[clinic input] 8507db96d56Sopenharmony_ciposonly_opt_kwonly_opt 8517db96d56Sopenharmony_ci 8527db96d56Sopenharmony_ci a: object 8537db96d56Sopenharmony_ci b: object = None 8547db96d56Sopenharmony_ci / 8557db96d56Sopenharmony_ci * 8567db96d56Sopenharmony_ci c: object = None 8577db96d56Sopenharmony_ci d: object = None 8587db96d56Sopenharmony_ci 8597db96d56Sopenharmony_ci[clinic start generated code]*/ 8607db96d56Sopenharmony_ci 8617db96d56Sopenharmony_cistatic PyObject * 8627db96d56Sopenharmony_ciposonly_opt_kwonly_opt_impl(PyObject *module, PyObject *a, PyObject *b, 8637db96d56Sopenharmony_ci PyObject *c, PyObject *d) 8647db96d56Sopenharmony_ci/*[clinic end generated code: output=64f3204a3a0413b6 input=d17516581e478412]*/ 8657db96d56Sopenharmony_ci{ 8667db96d56Sopenharmony_ci return pack_arguments_newref(4, a, b, c, d); 8677db96d56Sopenharmony_ci} 8687db96d56Sopenharmony_ci 8697db96d56Sopenharmony_ci 8707db96d56Sopenharmony_ci/*[clinic input] 8717db96d56Sopenharmony_ciposonly_keywords_kwonly_opt 8727db96d56Sopenharmony_ci 8737db96d56Sopenharmony_ci a: object 8747db96d56Sopenharmony_ci / 8757db96d56Sopenharmony_ci b: object 8767db96d56Sopenharmony_ci * 8777db96d56Sopenharmony_ci c: object 8787db96d56Sopenharmony_ci d: object = None 8797db96d56Sopenharmony_ci e: object = None 8807db96d56Sopenharmony_ci 8817db96d56Sopenharmony_ci[clinic start generated code]*/ 8827db96d56Sopenharmony_ci 8837db96d56Sopenharmony_cistatic PyObject * 8847db96d56Sopenharmony_ciposonly_keywords_kwonly_opt_impl(PyObject *module, PyObject *a, PyObject *b, 8857db96d56Sopenharmony_ci PyObject *c, PyObject *d, PyObject *e) 8867db96d56Sopenharmony_ci/*[clinic end generated code: output=dbd7e7ddd6257fa0 input=33529f29e97e5adb]*/ 8877db96d56Sopenharmony_ci{ 8887db96d56Sopenharmony_ci return pack_arguments_newref(5, a, b, c, d, e); 8897db96d56Sopenharmony_ci} 8907db96d56Sopenharmony_ci 8917db96d56Sopenharmony_ci 8927db96d56Sopenharmony_ci/*[clinic input] 8937db96d56Sopenharmony_ciposonly_keywords_opt_kwonly_opt 8947db96d56Sopenharmony_ci 8957db96d56Sopenharmony_ci a: object 8967db96d56Sopenharmony_ci / 8977db96d56Sopenharmony_ci b: object 8987db96d56Sopenharmony_ci c: object = None 8997db96d56Sopenharmony_ci * 9007db96d56Sopenharmony_ci d: object = None 9017db96d56Sopenharmony_ci e: object = None 9027db96d56Sopenharmony_ci 9037db96d56Sopenharmony_ci[clinic start generated code]*/ 9047db96d56Sopenharmony_ci 9057db96d56Sopenharmony_cistatic PyObject * 9067db96d56Sopenharmony_ciposonly_keywords_opt_kwonly_opt_impl(PyObject *module, PyObject *a, 9077db96d56Sopenharmony_ci PyObject *b, PyObject *c, PyObject *d, 9087db96d56Sopenharmony_ci PyObject *e) 9097db96d56Sopenharmony_ci/*[clinic end generated code: output=775d12ae44653045 input=4d4cc62f11441301]*/ 9107db96d56Sopenharmony_ci{ 9117db96d56Sopenharmony_ci return pack_arguments_newref(5, a, b, c, d, e); 9127db96d56Sopenharmony_ci} 9137db96d56Sopenharmony_ci 9147db96d56Sopenharmony_ci 9157db96d56Sopenharmony_ci/*[clinic input] 9167db96d56Sopenharmony_ciposonly_opt_keywords_opt_kwonly_opt 9177db96d56Sopenharmony_ci 9187db96d56Sopenharmony_ci a: object 9197db96d56Sopenharmony_ci b: object = None 9207db96d56Sopenharmony_ci / 9217db96d56Sopenharmony_ci c: object = None 9227db96d56Sopenharmony_ci * 9237db96d56Sopenharmony_ci d: object = None 9247db96d56Sopenharmony_ci 9257db96d56Sopenharmony_ci[clinic start generated code]*/ 9267db96d56Sopenharmony_ci 9277db96d56Sopenharmony_cistatic PyObject * 9287db96d56Sopenharmony_ciposonly_opt_keywords_opt_kwonly_opt_impl(PyObject *module, PyObject *a, 9297db96d56Sopenharmony_ci PyObject *b, PyObject *c, 9307db96d56Sopenharmony_ci PyObject *d) 9317db96d56Sopenharmony_ci/*[clinic end generated code: output=40c6dc422591eade input=3964960a68622431]*/ 9327db96d56Sopenharmony_ci{ 9337db96d56Sopenharmony_ci return pack_arguments_newref(4, a, b, c, d); 9347db96d56Sopenharmony_ci} 9357db96d56Sopenharmony_ci 9367db96d56Sopenharmony_ci 9377db96d56Sopenharmony_ci/*[clinic input] 9387db96d56Sopenharmony_cikeyword_only_parameter 9397db96d56Sopenharmony_ci 9407db96d56Sopenharmony_ci * 9417db96d56Sopenharmony_ci a: object 9427db96d56Sopenharmony_ci 9437db96d56Sopenharmony_ci[clinic start generated code]*/ 9447db96d56Sopenharmony_ci 9457db96d56Sopenharmony_cistatic PyObject * 9467db96d56Sopenharmony_cikeyword_only_parameter_impl(PyObject *module, PyObject *a) 9477db96d56Sopenharmony_ci/*[clinic end generated code: output=c454b6ce98232787 input=8d2868b8d0b27bdb]*/ 9487db96d56Sopenharmony_ci{ 9497db96d56Sopenharmony_ci return pack_arguments_newref(1, a); 9507db96d56Sopenharmony_ci} 9517db96d56Sopenharmony_ci 9527db96d56Sopenharmony_ci 9537db96d56Sopenharmony_ci/*[clinic input] 9547db96d56Sopenharmony_ciposonly_vararg 9557db96d56Sopenharmony_ci 9567db96d56Sopenharmony_ci a: object 9577db96d56Sopenharmony_ci / 9587db96d56Sopenharmony_ci b: object 9597db96d56Sopenharmony_ci *args: object 9607db96d56Sopenharmony_ci 9617db96d56Sopenharmony_ci[clinic start generated code]*/ 9627db96d56Sopenharmony_ci 9637db96d56Sopenharmony_cistatic PyObject * 9647db96d56Sopenharmony_ciposonly_vararg_impl(PyObject *module, PyObject *a, PyObject *b, 9657db96d56Sopenharmony_ci PyObject *args) 9667db96d56Sopenharmony_ci/*[clinic end generated code: output=ee6713acda6b954e input=783427fe7ec2b67a]*/ 9677db96d56Sopenharmony_ci{ 9687db96d56Sopenharmony_ci return pack_arguments_newref(3, a, b, args); 9697db96d56Sopenharmony_ci} 9707db96d56Sopenharmony_ci 9717db96d56Sopenharmony_ci 9727db96d56Sopenharmony_ci/*[clinic input] 9737db96d56Sopenharmony_civararg_and_posonly 9747db96d56Sopenharmony_ci 9757db96d56Sopenharmony_ci a: object 9767db96d56Sopenharmony_ci *args: object 9777db96d56Sopenharmony_ci / 9787db96d56Sopenharmony_ci 9797db96d56Sopenharmony_ci[clinic start generated code]*/ 9807db96d56Sopenharmony_ci 9817db96d56Sopenharmony_cistatic PyObject * 9827db96d56Sopenharmony_civararg_and_posonly_impl(PyObject *module, PyObject *a, PyObject *args) 9837db96d56Sopenharmony_ci/*[clinic end generated code: output=42792f799465a14d input=defe017b19ba52e8]*/ 9847db96d56Sopenharmony_ci{ 9857db96d56Sopenharmony_ci return pack_arguments_newref(2, a, args); 9867db96d56Sopenharmony_ci} 9877db96d56Sopenharmony_ci 9887db96d56Sopenharmony_ci 9897db96d56Sopenharmony_ci/*[clinic input] 9907db96d56Sopenharmony_civararg 9917db96d56Sopenharmony_ci 9927db96d56Sopenharmony_ci a: object 9937db96d56Sopenharmony_ci *args: object 9947db96d56Sopenharmony_ci 9957db96d56Sopenharmony_ci[clinic start generated code]*/ 9967db96d56Sopenharmony_ci 9977db96d56Sopenharmony_cistatic PyObject * 9987db96d56Sopenharmony_civararg_impl(PyObject *module, PyObject *a, PyObject *args) 9997db96d56Sopenharmony_ci/*[clinic end generated code: output=91ab7a0efc52dd5e input=02c0f772d05f591e]*/ 10007db96d56Sopenharmony_ci{ 10017db96d56Sopenharmony_ci return pack_arguments_newref(2, a, args); 10027db96d56Sopenharmony_ci} 10037db96d56Sopenharmony_ci 10047db96d56Sopenharmony_ci 10057db96d56Sopenharmony_ci/*[clinic input] 10067db96d56Sopenharmony_civararg_with_default 10077db96d56Sopenharmony_ci 10087db96d56Sopenharmony_ci a: object 10097db96d56Sopenharmony_ci *args: object 10107db96d56Sopenharmony_ci b: bool = False 10117db96d56Sopenharmony_ci 10127db96d56Sopenharmony_ci[clinic start generated code]*/ 10137db96d56Sopenharmony_ci 10147db96d56Sopenharmony_cistatic PyObject * 10157db96d56Sopenharmony_civararg_with_default_impl(PyObject *module, PyObject *a, PyObject *args, 10167db96d56Sopenharmony_ci int b) 10177db96d56Sopenharmony_ci/*[clinic end generated code: output=182c01035958ce92 input=68cafa6a79f89e36]*/ 10187db96d56Sopenharmony_ci{ 10197db96d56Sopenharmony_ci PyObject *obj_b = b ? Py_True : Py_False; 10207db96d56Sopenharmony_ci return pack_arguments_newref(3, a, args, obj_b); 10217db96d56Sopenharmony_ci} 10227db96d56Sopenharmony_ci 10237db96d56Sopenharmony_ci 10247db96d56Sopenharmony_ci/*[clinic input] 10257db96d56Sopenharmony_civararg_with_only_defaults 10267db96d56Sopenharmony_ci 10277db96d56Sopenharmony_ci *args: object 10287db96d56Sopenharmony_ci b: object = None 10297db96d56Sopenharmony_ci 10307db96d56Sopenharmony_ci[clinic start generated code]*/ 10317db96d56Sopenharmony_ci 10327db96d56Sopenharmony_cistatic PyObject * 10337db96d56Sopenharmony_civararg_with_only_defaults_impl(PyObject *module, PyObject *args, PyObject *b) 10347db96d56Sopenharmony_ci/*[clinic end generated code: output=c06b1826d91f2f7b input=678c069bc67550e1]*/ 10357db96d56Sopenharmony_ci{ 10367db96d56Sopenharmony_ci return pack_arguments_newref(2, args, b); 10377db96d56Sopenharmony_ci} 10387db96d56Sopenharmony_ci 10397db96d56Sopenharmony_ci 10407db96d56Sopenharmony_ci 10417db96d56Sopenharmony_ci/*[clinic input] 10427db96d56Sopenharmony_cigh_32092_oob 10437db96d56Sopenharmony_ci 10447db96d56Sopenharmony_ci pos1: object 10457db96d56Sopenharmony_ci pos2: object 10467db96d56Sopenharmony_ci *varargs: object 10477db96d56Sopenharmony_ci kw1: object = None 10487db96d56Sopenharmony_ci kw2: object = None 10497db96d56Sopenharmony_ci 10507db96d56Sopenharmony_ciProof-of-concept of GH-32092 OOB bug. 10517db96d56Sopenharmony_ci 10527db96d56Sopenharmony_ci[clinic start generated code]*/ 10537db96d56Sopenharmony_ci 10547db96d56Sopenharmony_cistatic PyObject * 10557db96d56Sopenharmony_cigh_32092_oob_impl(PyObject *module, PyObject *pos1, PyObject *pos2, 10567db96d56Sopenharmony_ci PyObject *varargs, PyObject *kw1, PyObject *kw2) 10577db96d56Sopenharmony_ci/*[clinic end generated code: output=ee259c130054653f input=46d15c881608f8ff]*/ 10587db96d56Sopenharmony_ci{ 10597db96d56Sopenharmony_ci Py_RETURN_NONE; 10607db96d56Sopenharmony_ci} 10617db96d56Sopenharmony_ci 10627db96d56Sopenharmony_ci 10637db96d56Sopenharmony_ci/*[clinic input] 10647db96d56Sopenharmony_cigh_32092_kw_pass 10657db96d56Sopenharmony_ci 10667db96d56Sopenharmony_ci pos: object 10677db96d56Sopenharmony_ci *args: object 10687db96d56Sopenharmony_ci kw: object = None 10697db96d56Sopenharmony_ci 10707db96d56Sopenharmony_ciProof-of-concept of GH-32092 keyword args passing bug. 10717db96d56Sopenharmony_ci 10727db96d56Sopenharmony_ci[clinic start generated code]*/ 10737db96d56Sopenharmony_ci 10747db96d56Sopenharmony_cistatic PyObject * 10757db96d56Sopenharmony_cigh_32092_kw_pass_impl(PyObject *module, PyObject *pos, PyObject *args, 10767db96d56Sopenharmony_ci PyObject *kw) 10777db96d56Sopenharmony_ci/*[clinic end generated code: output=4a2bbe4f7c8604e9 input=5c0bd5b9079a0cce]*/ 10787db96d56Sopenharmony_ci{ 10797db96d56Sopenharmony_ci Py_RETURN_NONE; 10807db96d56Sopenharmony_ci} 10817db96d56Sopenharmony_ci 10827db96d56Sopenharmony_ci 10837db96d56Sopenharmony_ci/*[clinic input] 10847db96d56Sopenharmony_cigh_99233_refcount 10857db96d56Sopenharmony_ci 10867db96d56Sopenharmony_ci *args: object 10877db96d56Sopenharmony_ci / 10887db96d56Sopenharmony_ci 10897db96d56Sopenharmony_ciProof-of-concept of GH-99233 refcount error bug. 10907db96d56Sopenharmony_ci 10917db96d56Sopenharmony_ci[clinic start generated code]*/ 10927db96d56Sopenharmony_ci 10937db96d56Sopenharmony_cistatic PyObject * 10947db96d56Sopenharmony_cigh_99233_refcount_impl(PyObject *module, PyObject *args) 10957db96d56Sopenharmony_ci/*[clinic end generated code: output=585855abfbca9a7f input=85f5fb47ac91a626]*/ 10967db96d56Sopenharmony_ci{ 10977db96d56Sopenharmony_ci Py_RETURN_NONE; 10987db96d56Sopenharmony_ci} 10997db96d56Sopenharmony_ci 11007db96d56Sopenharmony_ci 11017db96d56Sopenharmony_ci/*[clinic input] 11027db96d56Sopenharmony_cigh_99240_double_free 11037db96d56Sopenharmony_ci 11047db96d56Sopenharmony_ci a: str(encoding="idna") 11057db96d56Sopenharmony_ci b: str(encoding="idna") 11067db96d56Sopenharmony_ci / 11077db96d56Sopenharmony_ci 11087db96d56Sopenharmony_ciProof-of-concept of GH-99240 double-free bug. 11097db96d56Sopenharmony_ci 11107db96d56Sopenharmony_ci[clinic start generated code]*/ 11117db96d56Sopenharmony_ci 11127db96d56Sopenharmony_cistatic PyObject * 11137db96d56Sopenharmony_cigh_99240_double_free_impl(PyObject *module, char *a, char *b) 11147db96d56Sopenharmony_ci/*[clinic end generated code: output=586dc714992fe2ed input=23db44aa91870fc7]*/ 11157db96d56Sopenharmony_ci{ 11167db96d56Sopenharmony_ci Py_RETURN_NONE; 11177db96d56Sopenharmony_ci} 11187db96d56Sopenharmony_ci 11197db96d56Sopenharmony_ci 11207db96d56Sopenharmony_cistatic PyMethodDef tester_methods[] = { 11217db96d56Sopenharmony_ci TEST_EMPTY_FUNCTION_METHODDEF 11227db96d56Sopenharmony_ci OBJECTS_CONVERTER_METHODDEF 11237db96d56Sopenharmony_ci BYTES_OBJECT_CONVERTER_METHODDEF 11247db96d56Sopenharmony_ci BYTE_ARRAY_OBJECT_CONVERTER_METHODDEF 11257db96d56Sopenharmony_ci UNICODE_CONVERTER_METHODDEF 11267db96d56Sopenharmony_ci BOOL_CONVERTER_METHODDEF 11277db96d56Sopenharmony_ci CHAR_CONVERTER_METHODDEF 11287db96d56Sopenharmony_ci UNSIGNED_CHAR_CONVERTER_METHODDEF 11297db96d56Sopenharmony_ci SHORT_CONVERTER_METHODDEF 11307db96d56Sopenharmony_ci UNSIGNED_SHORT_CONVERTER_METHODDEF 11317db96d56Sopenharmony_ci INT_CONVERTER_METHODDEF 11327db96d56Sopenharmony_ci UNSIGNED_INT_CONVERTER_METHODDEF 11337db96d56Sopenharmony_ci LONG_CONVERTER_METHODDEF 11347db96d56Sopenharmony_ci UNSIGNED_LONG_CONVERTER_METHODDEF 11357db96d56Sopenharmony_ci LONG_LONG_CONVERTER_METHODDEF 11367db96d56Sopenharmony_ci UNSIGNED_LONG_LONG_CONVERTER_METHODDEF 11377db96d56Sopenharmony_ci PY_SSIZE_T_CONVERTER_METHODDEF 11387db96d56Sopenharmony_ci SLICE_INDEX_CONVERTER_METHODDEF 11397db96d56Sopenharmony_ci SIZE_T_CONVERTER_METHODDEF 11407db96d56Sopenharmony_ci FLOAT_CONVERTER_METHODDEF 11417db96d56Sopenharmony_ci DOUBLE_CONVERTER_METHODDEF 11427db96d56Sopenharmony_ci PY_COMPLEX_CONVERTER_METHODDEF 11437db96d56Sopenharmony_ci STR_CONVERTER_METHODDEF 11447db96d56Sopenharmony_ci STR_CONVERTER_ENCODING_METHODDEF 11457db96d56Sopenharmony_ci PY_BUFFER_CONVERTER_METHODDEF 11467db96d56Sopenharmony_ci KEYWORDS_METHODDEF 11477db96d56Sopenharmony_ci KEYWORDS_KWONLY_METHODDEF 11487db96d56Sopenharmony_ci KEYWORDS_OPT_METHODDEF 11497db96d56Sopenharmony_ci KEYWORDS_OPT_KWONLY_METHODDEF 11507db96d56Sopenharmony_ci KEYWORDS_KWONLY_OPT_METHODDEF 11517db96d56Sopenharmony_ci POSONLY_KEYWORDS_METHODDEF 11527db96d56Sopenharmony_ci POSONLY_KWONLY_METHODDEF 11537db96d56Sopenharmony_ci POSONLY_KEYWORDS_KWONLY_METHODDEF 11547db96d56Sopenharmony_ci POSONLY_KEYWORDS_OPT_METHODDEF 11557db96d56Sopenharmony_ci POSONLY_OPT_KEYWORDS_OPT_METHODDEF 11567db96d56Sopenharmony_ci POSONLY_KWONLY_OPT_METHODDEF 11577db96d56Sopenharmony_ci POSONLY_OPT_KWONLY_OPT_METHODDEF 11587db96d56Sopenharmony_ci POSONLY_KEYWORDS_KWONLY_OPT_METHODDEF 11597db96d56Sopenharmony_ci POSONLY_KEYWORDS_OPT_KWONLY_OPT_METHODDEF 11607db96d56Sopenharmony_ci POSONLY_OPT_KEYWORDS_OPT_KWONLY_OPT_METHODDEF 11617db96d56Sopenharmony_ci KEYWORD_ONLY_PARAMETER_METHODDEF 11627db96d56Sopenharmony_ci POSONLY_VARARG_METHODDEF 11637db96d56Sopenharmony_ci VARARG_AND_POSONLY_METHODDEF 11647db96d56Sopenharmony_ci VARARG_METHODDEF 11657db96d56Sopenharmony_ci VARARG_WITH_DEFAULT_METHODDEF 11667db96d56Sopenharmony_ci VARARG_WITH_ONLY_DEFAULTS_METHODDEF 11677db96d56Sopenharmony_ci GH_32092_OOB_METHODDEF 11687db96d56Sopenharmony_ci GH_32092_KW_PASS_METHODDEF 11697db96d56Sopenharmony_ci GH_99233_REFCOUNT_METHODDEF 11707db96d56Sopenharmony_ci GH_99240_DOUBLE_FREE_METHODDEF 11717db96d56Sopenharmony_ci {NULL, NULL} 11727db96d56Sopenharmony_ci}; 11737db96d56Sopenharmony_ci 11747db96d56Sopenharmony_cistatic struct PyModuleDef _testclinic_module = { 11757db96d56Sopenharmony_ci PyModuleDef_HEAD_INIT, 11767db96d56Sopenharmony_ci .m_name = "_testclinic", 11777db96d56Sopenharmony_ci .m_size = 0, 11787db96d56Sopenharmony_ci .m_methods = tester_methods, 11797db96d56Sopenharmony_ci}; 11807db96d56Sopenharmony_ci 11817db96d56Sopenharmony_ciPyMODINIT_FUNC 11827db96d56Sopenharmony_ciPyInit__testclinic(void) 11837db96d56Sopenharmony_ci{ 11847db96d56Sopenharmony_ci return PyModule_Create(&_testclinic_module); 11857db96d56Sopenharmony_ci} 11867db96d56Sopenharmony_ci 11877db96d56Sopenharmony_ci#undef RETURN_PACKED_ARGS 1188