◐ Shell
clean mode source ↗

bpo-46906: Add PyFloat_Pack8() to the C API by vstinner · Pull Request #31657 · python/cpython

@vstinner

Add new functions to pack and unpack C double (serialize and
deserialize):

* PyFloat_Pack2()
* PyFloat_Pack4()
* PyFloat_Pack8()
* PyFloat_Unpack2()
* PyFloat_Unpack4()
* PyFloat_Unpack8()

Document these functions and add unit tests.

Rename functions and move them from the internal C API to the public
C API:

* _PyFloat_Pack2() => PyFloat_Pack2()
* _PyFloat_Pack4() => PyFloat_Pack4()
* _PyFloat_Pack8() => PyFloat_Pack8()
* _PyFloat_Unpack2() => PyFloat_Unpack2()
* _PyFloat_Unpack4() => PyFloat_Unpack4()
* _PyFloat_Unpack8() => PyFloat_Unpack8()

Replace the "unsigned char*" type with "char*" which is more common
and easy to use.