Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gh-97908: CAPI docs: Remove repeated struct names from member docs #100054

Merged
merged 7 commits into from
May 29, 2023
Merged
12 changes: 6 additions & 6 deletions Doc/c-api/structures.rst
Original file line number Diff line number Diff line change
Expand Up @@ -395,7 +395,7 @@ Accessing attributes of extension types

The string should be static, no copy is made of it.

.. c:member:: Py_ssize_t PyMemberDef.offset
.. c:member:: Py_ssize_t offset

The offset in bytes that the member is located on the type’s object struct.

Expand Down Expand Up @@ -625,23 +625,23 @@ Defining Getters and Setters
Structure to define property-like access for a type. See also description of
the :c:member:`PyTypeObject.tp_getset` slot.

.. c:member:: const char* PyGetSetDef.name
.. c:member:: const char* name

attribute name

.. c:member:: getter PyGetSetDef.get
.. c:member:: getter get

C function to get the attribute.

.. c:member:: setter PyGetSetDef.set
.. c:member:: setter set

Optional C function to set or delete the attribute, if omitted the attribute is readonly.

.. c:member:: const char* PyGetSetDef.doc
.. c:member:: const char* doc

optional docstring

.. c:member:: void* PyGetSetDef.closure
.. c:member:: void* closure

Optional function pointer, providing additional data for getter and setter.

Expand Down
19 changes: 17 additions & 2 deletions Doc/c-api/type.rst
Original file line number Diff line number Diff line change
Expand Up @@ -349,6 +349,15 @@ The following functions and structs are used to create
:c:member:`~PyTypeObject.tp_new` is deprecated and in Python 3.14+ it
will be no longer allowed.

.. raw:: html

<!-- Keep old URL fragments working (see gh-97908) -->
<span id='c.PyType_Spec.PyType_Spec.name'></span>
<span id='c.PyType_Spec.PyType_Spec.basicsize'></span>
<span id='c.PyType_Spec.PyType_Spec.itemsize'></span>
<span id='c.PyType_Spec.PyType_Spec.flags'></span>
<span id='c.PyType_Spec.PyType_Spec.slots'></span>

.. c:type:: PyType_Spec

Structure defining a type's behavior.
Expand Down Expand Up @@ -410,12 +419,18 @@ The following functions and structs are used to create

Each slot ID should be specified at most once.

.. raw:: html

<!-- Keep old URL fragments working (see gh-97908) -->
<span id='c.PyType_Slot.PyType_Slot.slot'></span>
<span id='c.PyType_Slot.PyType_Slot.pfunc'></span>

.. c:type:: PyType_Slot

Structure defining optional functionality of a type, containing a slot ID
and a value pointer.

.. c:member:: int PyType_Slot.slot
.. c:member:: int slot

A slot ID.

Expand Down Expand Up @@ -459,7 +474,7 @@ The following functions and structs are used to create
:c:member:`~PyBufferProcs.bf_releasebuffer` are now available
under the limited API.

.. c:member:: void *PyType_Slot.pfunc
.. c:member:: void *pfunc

The desired value of the slot. In most cases, this is a pointer
to a function.
Expand Down