8000 more links between pages · adamtheturtle/pythoncapi@6d8ea97 · GitHub
[go: up one dir, main page]

Skip to content

Commit 6d8ea97

Browse files
committed
more links between pages
1 parent 7027e60 commit 6d8ea97

File tree

5 files changed

+12
-7
lines changed

5 files changed

+12
-7
lines changed

doc/bad_api.rst

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,14 @@
1-
.. _bad-api:
1+
.. _bad-c-api:
22

33
+++++++++
44
Bad C API
55
+++++++++
66

77
The first step to change the Python C API is to define what is a good and a bad
8-
C API. This page describes bad API.
8+
C API. The goal is to hide :ref:`implementation details <impl-details>`. The
9+
:ref:`new C API <new-c-api>` must not leak implementation details anymore.
910

10-
**Goal:** Hide implementation details.
11-
12-
The C API must not leak implementation details anymore.
11+
See also :ref:`Remove functions <remove-funcs>`.
1312

1413
.. _borrowed-ref:
1514

doc/new_api.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,13 @@ Non-goal
3131
development harder. Cython will still be able to access directly the full C
3232
API which includes implementation details and low-level "private" APIs.
3333

34+
.. _impl-details:
35+
3436
Hide implementation details
3537
===========================
3638

39+
See also :ref:`Bad C API <bad-c-api>`.
40+
3741
What are implementation details?
3842
--------------------------------
3943

doc/rationale.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ The C API must not leak implementation details anymore
7979

8080
**Goal:** Hide implementation details.
8181

82-
See :ref:`Bad C API <bad-api>`.
82+
See :ref:`Bad C API <bad-c-api>`.
8383

8484

8585
Performance slowdown

doc/remove_functions.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ exposing so many functions is an issue: CPython has to keep backward
1212
compatibility, PyPy has to implement all these functions, etc. Third party
1313
C extensions should call abstract functions like ``PyObject_GetItem()``.
1414

15+
See :ref:`Bad C API <bad-c-api>`.
16+
1517
Good: abstract functions
1618
========================
1719

doc/roadmap.rst

Lines changed: 1 addition & 1 deletion
< 4478 td data-grid-cell-id="diff-f167ab4321c00c059a1d923d820185ef11fd2e38e682e6b254d2f37a7c6fe231-9-9-2" data-line-anchor="diff-f167ab4321c00c059a1d923d820185ef11fd2e38e682e6b254d2f37a7c6fe231R9" data-selected="false" role="gridcell" style="background-color:var(--bgColor-default);padding-right:24px" tabindex="-1" valign="top" class="focusable-grid-cell diff-text-cell right-side-diff-cell left-side">
be modified or even removed
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Roadmap for a new Python C API
55
Roadmap
66
=======
77

8-
* Step 1: Identify :ref:`Bad C API <bad-api>` and list functions that should
8+
* Step 1: Identify :ref:`Bad C API <bad-c-api>` and list functions that should
99
1010
* Step 2: Add an **opt-in** :ref:`new C API <new-c-api>` with these cleanups. Test :ref:`popular
1111
C extensions <consumers>` to measure how much code is broken. Start to fix

0 commit comments

Comments
 (0)
0