How to set docstrings for extensions supporting PyNumberMethods?

Nick Alexander ncalexander at
Sat Mar 3 20:00:22 CET 2007


I am writing a python extension (compiled C code) that defines an
extension type with PyNumberMethods.  Everything works swimmingly,
except I can't deduce a clean way to set the docstring for tp_*
methods.  That is, I always have

type.__long__.__doc__ == 'x.__long__() <==> long(x)'

which a quick glance at the Python 2.5 source shows is the default.

I have found that I can use PyObject_GetAttr and PyWrapperDescrObject
and set the descriptor objects d_base->doc to a char pointer... but I
can't tell if this is safe.  Or the right way to do it.

If I'm on the wrong list, please let me know!
Nick Alexander

More information about the Python-list mailing list