diff --git a/Doc/c-api/descriptor.rst b/Doc/c-api/descriptor.rst index 313c534545a861..e23288c6a58590 100644 --- a/Doc/c-api/descriptor.rst +++ b/Doc/c-api/descriptor.rst @@ -10,11 +10,6 @@ found in the dictionary of type objects. .. XXX document these! -.. c:var:: PyTypeObject PyProperty_Type - - The type object for the built-in descriptor types. - - .. c:function:: PyObject* PyDescr_NewGetSet(PyTypeObject *type, struct PyGetSetDef *getset) @@ -74,9 +69,26 @@ found in the dictionary of type objects. .. c:function:: PyObject* PyWrapper_New(PyObject *, PyObject *) +.. c:macro:: PyDescr_COMMON + + This is a :term:`soft deprecated` macro including the common fields for a + descriptor object. + + This was included in Python's C API by mistake; do not use it in extensions. + For creating custom descriptor objects, create a class implementing the + descriptor protocol (:c:member:`~PyTypeObject.tp_descr_get` and + :c:member:`~PyTypeObject.tp_descr_set`). + + Built-in descriptors ^^^^^^^^^^^^^^^^^^^^ +.. c:var:: PyTypeObject PyProperty_Type + + The type object for property objects. This is the same object as + :class:`property` in the Python layer. + + .. c:var:: PyTypeObject PySuper_Type The type object for super objects. This is the same object as diff --git a/Doc/c-api/exceptions.rst b/Doc/c-api/exceptions.rst index d7fe9e2c9ec9b4..59af470f59ff34 100644 --- a/Doc/c-api/exceptions.rst +++ b/Doc/c-api/exceptions.rst @@ -793,6 +793,17 @@ Exception Classes Return :c:member:`~PyTypeObject.tp_name` of the exception class *ob*. +.. c:macro:: PyException_HEAD + + This is a :term:`soft deprecated` macro including the base fields for an + exception object. + + This was included in Python's C API by mistake and is not designed for use + in extensions. For creating custom exception objects, use + :c:func:`PyErr_NewException` or otherwise create a class inheriting from + :c:data:`PyExc_BaseException`. + + Exception Objects =================