Alexander Belopolsky <belopol...@users.sourceforge.net> added the comment:
This is definitely the right way to do it. I expect that I will have only minor nit-picks as I go through the patch. 1. You can probably just do #define PyStructSequence_SET_ITEM PyTuple_SET_ITEM #define PyStructSequence_GET_ITEM PyTuple_GET_ITEM there is no need to repeat the argument lists. 2. I am comparing PyStructSequence_New and PyTuple_New: - PyStructSequence_New does not fill ob_item array with NULLs. - PyStructSequence_New does not call _PyObject_GC_TRACK I believe tp_free gets inherited, so structseq tp_new should follow what tuple's tp_new does. I am not 100% sure on the second point, though _PyObject_GC_TRACK may be redundant after PyObject_GC_NewVar. 3. In structseq_repr, do you need PyTuple_GetItem? I think you can get away with PyTuple_GET_ITEM, or better PyStructSequence_GET_ITEM. ---------- nosy: +belopolsky -Alexander.Belopolsky _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue8413> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com