[Python-Dev] Not all public names in C API have the "Py" prefix
Serhiy Storchaka
storchaka at gmail.com
Mon Mar 27 06:22:01 EDT 2017
More information about the Python-Dev mailing list
Mon Mar 27 06:22:01 EDT 2017
- Previous message (by thread): [Python-Dev] PyCharm debugger became 40x faster on Python 3.6 thanks to PEP 523
- Next message (by thread): [Python-Dev] Not all public names in C API have the "Py" prefix
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
A number of public typedef names without the "Py" prefix survived the Grand Renaming [1]. A couple of new names without the "Py" prefix were added after the Grand Renaming (e.g. getter and setter [2]). That names were included in the Stable ABI. The long list of such names can be found in PEP 384 [3]: unaryfunc binaryfunc ternaryfunc inquiry lenfunc ssizeargfunc ssizessizeargfunc ssizeobjargproc ssizessizeobjargproc objobjargproc objobjproc visitproc traverseproc destructor getattrfunc getattrofunc setattrfunc setattrofunc reprfunc hashfunc richcmpfunc getiterfunc iternextfunc descrgetfunc descrsetfunc initproc newfunc allocfunc getter setter And I suppose new names were added since Python 3.2. A couple of underscored name without the "_Py" prefix (e.g. _object, _typeobject) are defined when include "Python.h". Should we to do something with this? Maybe add Py-prefixed aliases and temporary keep old names for compatibility (but allow to hide them if define a special macro)? [1] https://python-history.blogspot.com/2009/03/great-or-grand-renaming.html [2] https://github.com/python/cpython/commit/6d6c1a35e08b95a83dbe47dbd9e6474daff00354 [3] https://www.python.org/dev/peps/pep-0384/
- Previous message (by thread): [Python-Dev] PyCharm debugger became 40x faster on Python 3.6 thanks to PEP 523
- Next message (by thread): [Python-Dev] Not all public names in C API have the "Py" prefix
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-Dev mailing list