diff options
author | Anton Samokhvalov <pg83@yandex.ru> | 2022-02-10 16:45:17 +0300 |
---|---|---|
committer | Daniil Cherednik <dcherednik@yandex-team.ru> | 2022-02-10 16:45:17 +0300 |
commit | d3a398281c6fd1d3672036cb2d63f842d2cb28c5 (patch) | |
tree | dd4bd3ca0f36b817e96812825ffaf10d645803f2 /contrib/tools/cython/Cython/Includes/cpython/ref.pxd | |
parent | 72cb13b4aff9bc9cf22e49251bc8fd143f82538f (diff) | |
download | ydb-d3a398281c6fd1d3672036cb2d63f842d2cb28c5.tar.gz |
Restoring authorship annotation for Anton Samokhvalov <pg83@yandex.ru>. Commit 2 of 2.
Diffstat (limited to 'contrib/tools/cython/Cython/Includes/cpython/ref.pxd')
-rw-r--r-- | contrib/tools/cython/Cython/Includes/cpython/ref.pxd | 98 |
1 files changed, 49 insertions, 49 deletions
diff --git a/contrib/tools/cython/Cython/Includes/cpython/ref.pxd b/contrib/tools/cython/Cython/Includes/cpython/ref.pxd index 84ee788bc8..4bc9a7d7c8 100644 --- a/contrib/tools/cython/Cython/Includes/cpython/ref.pxd +++ b/contrib/tools/cython/Cython/Includes/cpython/ref.pxd @@ -1,51 +1,51 @@ from .object cimport PyObject, PyTypeObject, Py_TYPE # legacy imports for re-export -cdef extern from "Python.h": - ##################################################################### - # 3. Reference Counts - ##################################################################### - # The macros in this section are used for managing reference counts of Python objects. - void Py_INCREF(object o) - # Increment the reference count for object o. The object must not - # be NULL; if you aren't sure that it isn't NULL, use - # Py_XINCREF(). - - void Py_XINCREF(PyObject* o) - # Increment the reference count for object o. The object may be NULL, in which case the macro has no effect. - - void Py_DECREF(object o) - # Decrement the reference count for object o. The object must not - # be NULL; if you aren't sure that it isn't NULL, use - # Py_XDECREF(). If the reference count reaches zero, the object's - # type's deallocation function (which must not be NULL) is - # invoked. - - # Warning: The deallocation function can cause arbitrary Python - # code to be invoked (e.g. when a class instance with a __del__() - # method is deallocated). While exceptions in such code are not - # propagated, the executed code has free access to all Python - # global variables. This means that any object that is reachable - # from a global variable should be in a consistent state before - # Py_DECREF() is invoked. For example, code to delete an object - # from a list should copy a reference to the deleted object in a - # temporary variable, update the list data structure, and then - # call Py_DECREF() for the temporary variable. - - void Py_XDECREF(PyObject* o) - # Decrement the reference count for object o. The object may be - # NULL, in which case the macro has no effect; otherwise the - # effect is the same as for Py_DECREF(), and the same warning - # applies. - - void Py_CLEAR(PyObject* o) - # Decrement the reference count for object o. The object may be - # NULL, in which case the macro has no effect; otherwise the - # effect is the same as for Py_DECREF(), except that the argument - # is also set to NULL. The warning for Py_DECREF() does not apply - # with respect to the object passed because the macro carefully - # uses a temporary variable and sets the argument to NULL before - # decrementing its reference count. - # It is a good idea to use this macro whenever decrementing the - # value of a variable that might be traversed during garbage - # collection. - +cdef extern from "Python.h": + ##################################################################### + # 3. Reference Counts + ##################################################################### + # The macros in this section are used for managing reference counts of Python objects. + void Py_INCREF(object o) + # Increment the reference count for object o. The object must not + # be NULL; if you aren't sure that it isn't NULL, use + # Py_XINCREF(). + + void Py_XINCREF(PyObject* o) + # Increment the reference count for object o. The object may be NULL, in which case the macro has no effect. + + void Py_DECREF(object o) + # Decrement the reference count for object o. The object must not + # be NULL; if you aren't sure that it isn't NULL, use + # Py_XDECREF(). If the reference count reaches zero, the object's + # type's deallocation function (which must not be NULL) is + # invoked. + + # Warning: The deallocation function can cause arbitrary Python + # code to be invoked (e.g. when a class instance with a __del__() + # method is deallocated). While exceptions in such code are not + # propagated, the executed code has free access to all Python + # global variables. This means that any object that is reachable + # from a global variable should be in a consistent state before + # Py_DECREF() is invoked. For example, code to delete an object + # from a list should copy a reference to the deleted object in a + # temporary variable, update the list data structure, and then + # call Py_DECREF() for the temporary variable. + + void Py_XDECREF(PyObject* o) + # Decrement the reference count for object o. The object may be + # NULL, in which case the macro has no effect; otherwise the + # effect is the same as for Py_DECREF(), and the same warning + # applies. + + void Py_CLEAR(PyObject* o) + # Decrement the reference count for object o. The object may be + # NULL, in which case the macro has no effect; otherwise the + # effect is the same as for Py_DECREF(), except that the argument + # is also set to NULL. The warning for Py_DECREF() does not apply + # with respect to the object passed because the macro carefully + # uses a temporary variable and sets the argument to NULL before + # decrementing its reference count. + # It is a good idea to use this macro whenever decrementing the + # value of a variable that might be traversed during garbage + # collection. + |