New submission from Serhiy Storchaka:

C API of the C implementation of OrderedDict was added in 3.5 together with the 
C implementation of OrderedDict. But it was never announced nor documented. 
Some macros contain bugs. PyODict_Check() and PyODict_CheckExact() are declared 
in the limited API, but don't work since use PyODict_Type not available in the 
limited API. PyODict_SIZE() is expanded to syntactically incorrect code and 
it's name is not consistent with similar macros: PyTuple_GET_SIZE, 
PyList_GET_SIZE and just added PyDict_GET_SIZE. Many names are just transparent 
wrappers around PyDict API (and they can't be different).

Since PyODict C API is not documented, partially not working and partially 
redundant, and the C implementation of OrderedDict is optional (other Python 
implementations can provide just Python implementation of OrderedDict), I think 
this C API should be made private if not removed.

----------
components: Interpreter Core
messages: 284098
nosy: eric.snow, rhettinger, serhiy.storchaka
priority: normal
severity: normal
status: open
title: C API of OrderedDict

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue29084>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to