diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2017-03-19 06:51:07 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-03-19 06:51:07 (GMT) |
commit | 18b250f844bf8b2d1a81c2d2dcc74e850364fe35 (patch) | |
tree | 117c9240b5b87067a07cb43bc9260ed26c3148bb /Objects/clinic/complexobject.c.h | |
parent | 0b5615926a573c19c887a701a2f7047f4fd06de6 (diff) | |
download | cpython-18b250f844bf8b2d1a81c2d2dcc74e850364fe35.zip cpython-18b250f844bf8b2d1a81c2d2dcc74e850364fe35.tar.gz cpython-18b250f844bf8b2d1a81c2d2dcc74e850364fe35.tar.bz2 |
bpo-29793: Convert some builtin types constructors to Argument Clinic. (#615)
Diffstat (limited to 'Objects/clinic/complexobject.c.h')
-rw-r--r-- | Objects/clinic/complexobject.c.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/Objects/clinic/complexobject.c.h b/Objects/clinic/complexobject.c.h new file mode 100644 index 0000000..b0b4c0e --- /dev/null +++ b/Objects/clinic/complexobject.c.h @@ -0,0 +1,34 @@ +/*[clinic input] +preserve +[clinic start generated code]*/ + +PyDoc_STRVAR(complex_new__doc__, +"complex(real=0, imag=0)\n" +"--\n" +"\n" +"Create a complex number from a real part and an optional imaginary part.\n" +"\n" +"This is equivalent to (real + imag*1j) where imag defaults to 0."); + +static PyObject * +complex_new_impl(PyTypeObject *type, PyObject *r, PyObject *i); + +static PyObject * +complex_new(PyTypeObject *type, PyObject *args, PyObject *kwargs) +{ + PyObject *return_value = NULL; + static const char * const _keywords[] = {"real", "imag", NULL}; + static _PyArg_Parser _parser = {"|OO:complex", _keywords, 0}; + PyObject *r = Py_False; + PyObject *i = NULL; + + if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser, + &r, &i)) { + goto exit; + } + return_value = complex_new_impl(type, r, i); + +exit: + return return_value; +} +/*[clinic end generated code: output=74035493480ab5e5 input=a9049054013a1b77]*/ |