On Jul 26, 2010, at 11:58 AM, Pierre GM wrote: > All, > I'm teaching myself how to subclass ndarrays in C (not in Cython, just plain > C). It's slowly coming together, but I'm now running into a problem: I need > to overwrite __getitem__ and I'm not sure how to do it. I was thinking about > using my own function instead of array_as_mapping.mp_subscript, but how do I > import array_as_mapping in the first place ? And is it really the way to go ? > Any pointer appreciated...
To subtype in C, you have to populate the function pointer tables. To "over-ride" __getitem__ you have to replace the function pointer, which in the case of mp_subscript is in the array_as_mapping table --- which you have to create as a static pointer table that contains the functions you want and then point the TypeObject structure to it some-time during initialization. I hope that helps a little bit. -Travis _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion