[Python-Dev] Simpler reformulation of C inheritance Q.

David Abrahams David Abrahams" <dave@boost-consulting.com
Mon, 5 Aug 2002 23:29:43 -0400


From: "Greg Ewing" <greg@cosc.canterbury.ac.nz>


> > Here's a hack.
> >
> > For static extensions, you could extend one of the extension structs,
> > e.g. PyMappingMethods
>
> This perhaps suggests a way of handling this in a more
> general way in the future:
>
> Add a slot to the typeobject which points to a variable-sized
> array of pointers. There is one entry in the array for each
> level of inheritance, and it points to a struct containing
> whatever extra stuff you want to add at that level.
>
> This would only handle single inheritance, but I think
> that's all you can have at the C level anyway, isn't
> it?

1. I'm pretty sure the answer to the above question is no
2. The scheme you propose is more costly in memory and cycles than I'd like
(FWIW)

-Dave

-----------------------------------------------------------
           David Abrahams * Boost Consulting
dave@boost-consulting.com * http://www.boost-consulting.com