Skip to content

[3.12] gh-121834: Improve complex C-API docs (GH-121835) #121897

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Jul 17, 2024

Conversation

sobolevn
Copy link
Member

@sobolevn sobolevn commented Jul 17, 2024

(cherry picked from commit 72dccd6)

Since PyComplex_RealAsDouble uses PyFloat_AsDouble, it can still fail there:

double
PyComplex_RealAsDouble(PyObject *op)
{
if (PyComplex_Check(op)) {
return ((PyComplexObject *)op)->cval.real;
}
else {
return PyFloat_AsDouble(op);
}
}

While PyComplex_ImagAsDouble is always successful:

double
PyComplex_ImagAsDouble(PyObject *op)
{
if (PyComplex_Check(op)) {
return ((PyComplexObject *)op)->cval.imag;
}
else {
return 0.0;
}
}


📚 Documentation preview 📚: https://cpython-previews--121897.org.readthedocs.build/

(cherry picked from commit 72dccd6)

Co-authored-by: sobolevn <mail@sobolevn.me>
Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com>
Co-authored-by: Petr Viktorin <encukou@gmail.com>
@sobolevn
Copy link
Member Author

cc @skirpichev

Copy link
Member

@skirpichev skirpichev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One remark on PyComplex_ImagAsDouble(). The rest LGTM.

Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com>
@sobolevn sobolevn enabled auto-merge (squash) July 17, 2024 07:26
@sobolevn sobolevn merged commit 6a19d22 into python:3.12 Jul 17, 2024
21 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs Documentation in the Doc dir skip news
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants