[Python-Dev] Extending types in C - help needed
Thomas Heller
thomas.heller@ion-tof.com
Wed, 6 Feb 2002 13:56:30 +0100
From: "Guido van Rossum" <guido@python.org>
> > Does this mean this is the wrong route, or is it absolute impossible
> > to create a subtype of PyType_Type in C with additional slots?
>
> I wish I had time to explain this, but I don't. For now, you'll have
> to read how types are initialized in typeobject.c -- maybe there's a
> way, maybe there isn't.
>
> > Any tips about the route to take?
>
> It can be done easily dynamically.
>
I'm still struggling with this. How can it be done dynamically?
My idea would be to realloc() the object after creation, adding
a few bytes at the end. The problem is that I don't know how to
find out about the object size without knowledge about the internals.
The formula given in PEP 253
type->tp_basicsize + nitems * type->tp_itemsize
seems not to be valid any more (at least with CYCLE GC).
Thomas