From: Stefan Behnel Date: Wed, 14 Oct 2009 13:59:18 +0000 (+0200) Subject: PyCObject C-API declarations X-Git-Tag: 0.13.beta0~2^2~121^2~64 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=b0bf40a8853f3f1367a721be30ef29269e3fafe2;p=cython.git PyCObject C-API declarations --- diff --git a/Cython/Includes/python_cobject.pxd b/Cython/Includes/python_cobject.pxd new file mode 100644 index 00000000..fc33c521 --- /dev/null +++ b/Cython/Includes/python_cobject.pxd @@ -0,0 +1,36 @@ +cdef extern from "Python.h": + ctypedef void PyObject + + ########################################################################### + # Warning: + # + # The CObject API is deprecated as of Python 3.1. Please switch to + # the new Capsules API. + ########################################################################### + + int PyCObject_Check(object p)¶ + # Return true if its argument is a PyCObject. + + object PyCObject_FromVoidPtr(void* cobj, void (*destr)(void *))¶ + # Return value: New reference. + # + # Create a PyCObject from the void * cobj. The destr function will + # be called when the object is reclaimed, unless it is NULL. + + object PyCObject_FromVoidPtrAndDesc(void* cobj, void* desc, void (*destr)(void *, void *))¶ + # Return value: New reference. + # + # Create a PyCObject from the void * cobj. The destr function will + # be called when the object is reclaimed. The desc argument can be + # used to pass extra callback data for the destructor function. + + void* PyCObject_AsVoidPtr(object self)¶ + # Return the object void * that the PyCObject self was created with. + + void* PyCObject_GetDesc(object self)¶ + # Return the description void * that the PyCObject self was created with. + + int PyCObject_SetVoidPtr(object self, void* cobj)¶ + # Set the void pointer inside self to cobj. The PyCObject must not + # have an associated destructor. Return true on success, false on + # failure.