On Fri, 2003-05-16 at 13:08, Jim Fulton wrote: > If you write types the New Way, there are no PyObject_New calls and > no need to call PyObject_GC_Track. I don't follow. There are plenty of types that are garbage collectable that also use PyObject_GC_New. One example is PyDict_New(). If something is widespread in the Python source tree (a common source of example code for programmers), it ought to be documented. > > It's not clear to me what the one right way to implement a tp_dealloc > > slot is. I've seen two common patterns in the Python source: call > > obj->ob_type->tp_free or call PyObject_GC_Del. The type object > > initializes tp_free to PyObject_GC_Del, so in most cases the two > > spellings are equivalent. Calling PyObject_GC_Del feels more > > straightforward to me. > > You need to call obj->ob_type->tp_free to support subclassing. > > I suggest that every new type should call obj->ob_type->tp_free > as a matter of course. If the type is going to support subclassing. Jeremy
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4