On Nov 1, 11:04 pm, "Gabriel Genellina" <[EMAIL PROTECTED]> wrote: > En Thu, 01 Nov 2007 22:13:35 -0300, <[EMAIL PROTECTED]> escribió: > > > On Nov 1, 4:14 pm, [EMAIL PROTECTED] wrote: > >> q#1: > >> in C I want to check if a given PyObject is a xml.dom.minidom.Node (or > >> a derivative). > >> how do i extract a PyTypeObject for such a class? > > > nevermind, i found an instance object that will work for me > > as long as i figure out where is the documentation > > beyond this: > >http://docs.python.org/api/instanceObjects.html > > on the data attrib access and extracting PyClassObject from it. > > classic_class = PyObject_GetAttrString( your_classic_instance, "__class__") > > >> issue #2 > >> I'm in a situation when i don't really need to extend python with any > >> classes of my own but > >> i do have extra luggage for the python data structures such as tuples, > >> lists, dictionaries, etc > >> on the c++ side. I see no place in PyObject_HEAD where i can stick a > >> void* to my extra data. > > Assuming you can recompile all the extensions you use, you could insert > your void* into _PyObject_HEAD_EXTRA and _PyObject_EXTRA_INIT
i added two void pointers to head_extra and 0,0, to the extra_init. For some reason i get garbage in them from PyEval_EvalCode :-( (that's after i blew the build dir and rebuilt 2.4.4 from scratch so i don't think i have a bad build) -- http://mail.python.org/mailman/listinfo/python-list