17db96d56Sopenharmony_ci/*[clinic input] 27db96d56Sopenharmony_cipreserve 37db96d56Sopenharmony_ci[clinic start generated code]*/ 47db96d56Sopenharmony_ci 57db96d56Sopenharmony_ciPyDoc_STRVAR(complex_conjugate__doc__, 67db96d56Sopenharmony_ci"conjugate($self, /)\n" 77db96d56Sopenharmony_ci"--\n" 87db96d56Sopenharmony_ci"\n" 97db96d56Sopenharmony_ci"Return the complex conjugate of its argument. (3-4j).conjugate() == 3+4j."); 107db96d56Sopenharmony_ci 117db96d56Sopenharmony_ci#define COMPLEX_CONJUGATE_METHODDEF \ 127db96d56Sopenharmony_ci {"conjugate", (PyCFunction)complex_conjugate, METH_NOARGS, complex_conjugate__doc__}, 137db96d56Sopenharmony_ci 147db96d56Sopenharmony_cistatic PyObject * 157db96d56Sopenharmony_cicomplex_conjugate_impl(PyComplexObject *self); 167db96d56Sopenharmony_ci 177db96d56Sopenharmony_cistatic PyObject * 187db96d56Sopenharmony_cicomplex_conjugate(PyComplexObject *self, PyObject *Py_UNUSED(ignored)) 197db96d56Sopenharmony_ci{ 207db96d56Sopenharmony_ci return complex_conjugate_impl(self); 217db96d56Sopenharmony_ci} 227db96d56Sopenharmony_ci 237db96d56Sopenharmony_ciPyDoc_STRVAR(complex___getnewargs____doc__, 247db96d56Sopenharmony_ci"__getnewargs__($self, /)\n" 257db96d56Sopenharmony_ci"--\n" 267db96d56Sopenharmony_ci"\n"); 277db96d56Sopenharmony_ci 287db96d56Sopenharmony_ci#define COMPLEX___GETNEWARGS___METHODDEF \ 297db96d56Sopenharmony_ci {"__getnewargs__", (PyCFunction)complex___getnewargs__, METH_NOARGS, complex___getnewargs____doc__}, 307db96d56Sopenharmony_ci 317db96d56Sopenharmony_cistatic PyObject * 327db96d56Sopenharmony_cicomplex___getnewargs___impl(PyComplexObject *self); 337db96d56Sopenharmony_ci 347db96d56Sopenharmony_cistatic PyObject * 357db96d56Sopenharmony_cicomplex___getnewargs__(PyComplexObject *self, PyObject *Py_UNUSED(ignored)) 367db96d56Sopenharmony_ci{ 377db96d56Sopenharmony_ci return complex___getnewargs___impl(self); 387db96d56Sopenharmony_ci} 397db96d56Sopenharmony_ci 407db96d56Sopenharmony_ciPyDoc_STRVAR(complex___format____doc__, 417db96d56Sopenharmony_ci"__format__($self, format_spec, /)\n" 427db96d56Sopenharmony_ci"--\n" 437db96d56Sopenharmony_ci"\n" 447db96d56Sopenharmony_ci"Convert to a string according to format_spec."); 457db96d56Sopenharmony_ci 467db96d56Sopenharmony_ci#define COMPLEX___FORMAT___METHODDEF \ 477db96d56Sopenharmony_ci {"__format__", (PyCFunction)complex___format__, METH_O, complex___format____doc__}, 487db96d56Sopenharmony_ci 497db96d56Sopenharmony_cistatic PyObject * 507db96d56Sopenharmony_cicomplex___format___impl(PyComplexObject *self, PyObject *format_spec); 517db96d56Sopenharmony_ci 527db96d56Sopenharmony_cistatic PyObject * 537db96d56Sopenharmony_cicomplex___format__(PyComplexObject *self, PyObject *arg) 547db96d56Sopenharmony_ci{ 557db96d56Sopenharmony_ci PyObject *return_value = NULL; 567db96d56Sopenharmony_ci PyObject *format_spec; 577db96d56Sopenharmony_ci 587db96d56Sopenharmony_ci if (!PyUnicode_Check(arg)) { 597db96d56Sopenharmony_ci _PyArg_BadArgument("__format__", "argument", "str", arg); 607db96d56Sopenharmony_ci goto exit; 617db96d56Sopenharmony_ci } 627db96d56Sopenharmony_ci if (PyUnicode_READY(arg) == -1) { 637db96d56Sopenharmony_ci goto exit; 647db96d56Sopenharmony_ci } 657db96d56Sopenharmony_ci format_spec = arg; 667db96d56Sopenharmony_ci return_value = complex___format___impl(self, format_spec); 677db96d56Sopenharmony_ci 687db96d56Sopenharmony_ciexit: 697db96d56Sopenharmony_ci return return_value; 707db96d56Sopenharmony_ci} 717db96d56Sopenharmony_ci 727db96d56Sopenharmony_ciPyDoc_STRVAR(complex___complex____doc__, 737db96d56Sopenharmony_ci"__complex__($self, /)\n" 747db96d56Sopenharmony_ci"--\n" 757db96d56Sopenharmony_ci"\n" 767db96d56Sopenharmony_ci"Convert this value to exact type complex."); 777db96d56Sopenharmony_ci 787db96d56Sopenharmony_ci#define COMPLEX___COMPLEX___METHODDEF \ 797db96d56Sopenharmony_ci {"__complex__", (PyCFunction)complex___complex__, METH_NOARGS, complex___complex____doc__}, 807db96d56Sopenharmony_ci 817db96d56Sopenharmony_cistatic PyObject * 827db96d56Sopenharmony_cicomplex___complex___impl(PyComplexObject *self); 837db96d56Sopenharmony_ci 847db96d56Sopenharmony_cistatic PyObject * 857db96d56Sopenharmony_cicomplex___complex__(PyComplexObject *self, PyObject *Py_UNUSED(ignored)) 867db96d56Sopenharmony_ci{ 877db96d56Sopenharmony_ci return complex___complex___impl(self); 887db96d56Sopenharmony_ci} 897db96d56Sopenharmony_ci 907db96d56Sopenharmony_ciPyDoc_STRVAR(complex_new__doc__, 917db96d56Sopenharmony_ci"complex(real=0, imag=0)\n" 927db96d56Sopenharmony_ci"--\n" 937db96d56Sopenharmony_ci"\n" 947db96d56Sopenharmony_ci"Create a complex number from a real part and an optional imaginary part.\n" 957db96d56Sopenharmony_ci"\n" 967db96d56Sopenharmony_ci"This is equivalent to (real + imag*1j) where imag defaults to 0."); 977db96d56Sopenharmony_ci 987db96d56Sopenharmony_cistatic PyObject * 997db96d56Sopenharmony_cicomplex_new_impl(PyTypeObject *type, PyObject *r, PyObject *i); 1007db96d56Sopenharmony_ci 1017db96d56Sopenharmony_cistatic PyObject * 1027db96d56Sopenharmony_cicomplex_new(PyTypeObject *type, PyObject *args, PyObject *kwargs) 1037db96d56Sopenharmony_ci{ 1047db96d56Sopenharmony_ci PyObject *return_value = NULL; 1057db96d56Sopenharmony_ci static const char * const _keywords[] = {"real", "imag", NULL}; 1067db96d56Sopenharmony_ci static _PyArg_Parser _parser = {NULL, _keywords, "complex", 0}; 1077db96d56Sopenharmony_ci PyObject *argsbuf[2]; 1087db96d56Sopenharmony_ci PyObject * const *fastargs; 1097db96d56Sopenharmony_ci Py_ssize_t nargs = PyTuple_GET_SIZE(args); 1107db96d56Sopenharmony_ci Py_ssize_t noptargs = nargs + (kwargs ? PyDict_GET_SIZE(kwargs) : 0) - 0; 1117db96d56Sopenharmony_ci PyObject *r = NULL; 1127db96d56Sopenharmony_ci PyObject *i = NULL; 1137db96d56Sopenharmony_ci 1147db96d56Sopenharmony_ci fastargs = _PyArg_UnpackKeywords(_PyTuple_CAST(args)->ob_item, nargs, kwargs, NULL, &_parser, 0, 2, 0, argsbuf); 1157db96d56Sopenharmony_ci if (!fastargs) { 1167db96d56Sopenharmony_ci goto exit; 1177db96d56Sopenharmony_ci } 1187db96d56Sopenharmony_ci if (!noptargs) { 1197db96d56Sopenharmony_ci goto skip_optional_pos; 1207db96d56Sopenharmony_ci } 1217db96d56Sopenharmony_ci if (fastargs[0]) { 1227db96d56Sopenharmony_ci r = fastargs[0]; 1237db96d56Sopenharmony_ci if (!--noptargs) { 1247db96d56Sopenharmony_ci goto skip_optional_pos; 1257db96d56Sopenharmony_ci } 1267db96d56Sopenharmony_ci } 1277db96d56Sopenharmony_ci i = fastargs[1]; 1287db96d56Sopenharmony_ciskip_optional_pos: 1297db96d56Sopenharmony_ci return_value = complex_new_impl(type, r, i); 1307db96d56Sopenharmony_ci 1317db96d56Sopenharmony_ciexit: 1327db96d56Sopenharmony_ci return return_value; 1337db96d56Sopenharmony_ci} 1347db96d56Sopenharmony_ci/*[clinic end generated code: output=6d85094ace15677e input=a9049054013a1b77]*/ 135