Lines Matching refs:capsule
27 The type of a destructor callback for a capsule. Defined as::
48 non-*NULL*, this string must outlive the capsule. (Though it is permitted to
52 capsule as its argument when it is destroyed.
54 If this capsule will be stored as an attribute of a module, the *name* should
56 to import the capsule using :c:func:`PyCapsule_Import`.
59 .. c:function:: void* PyCapsule_GetPointer(PyObject *capsule, const char *name)
61 Retrieve the *pointer* stored in the capsule. On failure, set an exception
64 The *name* parameter must compare exactly to the name stored in the capsule.
65 If the name stored in the capsule is *NULL*, the *name* passed in must also
66 be *NULL*. Python uses the C function :c:func:`strcmp` to compare capsule
70 .. c:function:: PyCapsule_Destructor PyCapsule_GetDestructor(PyObject *capsule)
72 Return the current destructor stored in the capsule. On failure, set an
75 It is legal for a capsule to have a *NULL* destructor. This makes a *NULL*
80 .. c:function:: void* PyCapsule_GetContext(PyObject *capsule)
82 Return the current context stored in the capsule. On failure, set an
85 It is legal for a capsule to have a *NULL* context. This makes a *NULL*
90 .. c:function:: const char* PyCapsule_GetName(PyObject *capsule)
92 Return the current name stored in the capsule. On failure, set an exception
95 It is legal for a capsule to have a *NULL* name. This makes a *NULL* return
102 Import a pointer to a C object from a capsule attribute in a module. The
104 ``module.attribute``. The *name* stored in the capsule must match this
109 Return the capsule's internal *pointer* on success. On failure, set an
113 .. c:function:: int PyCapsule_IsValid(PyObject *capsule, const char *name)
115 Determines whether or not *capsule* is a valid capsule. A valid capsule is
118 :c:func:`PyCapsule_GetPointer` for information on how capsule names are
129 .. c:function:: int PyCapsule_SetContext(PyObject *capsule, void *context)
131 Set the context pointer inside *capsule* to *context*.
136 .. c:function:: int PyCapsule_SetDestructor(PyObject *capsule, PyCapsule_Destructor destructor)
138 Set the destructor inside *capsule* to *destructor*.
143 .. c:function:: int PyCapsule_SetName(PyObject *capsule, const char *name)
145 Set the name inside *capsule* to *name*. If non-*NULL*, the name must
146 outlive the capsule. If the previous *name* stored in the capsule was not
152 .. c:function:: int PyCapsule_SetPointer(PyObject *capsule, void *pointer)
154 Set the void pointer inside *capsule* to *pointer*. The pointer may not be