|
42 | 42 | # - a combination of the above (functions that were called by macros that |
43 | 43 | # were public in the past) |
44 | 44 |
|
| 45 | +# For structs, one of the following must be set: |
| 46 | +# - opaque: The struct name is available in the Limited API, but its members |
| 47 | +# are not. Users must manipulate it via pointers. |
| 48 | +# - members: Space-separated list of members which are part of the |
| 49 | +# Limited API and Stable ABI. |
| 50 | +# Members that aren't listed are not accessible to applications. |
| 51 | +# - full-abi: The entire struct -- all its members and its size -- is part of |
| 52 | +# the Stable ABI, and must not change. |
| 53 | + |
45 | 54 | # Removing items from this file is generally not allowed, and additions should |
46 | 55 | # be considered with that in mind. See the devguide for exact rules: |
47 | 56 | # https://devguide.python.org/c-api/#limited-api |
|
54 | 63 |
|
55 | 64 | struct PyObject |
56 | 65 | added 3.2 |
| 66 | + members ob_refcnt ob_type |
57 | 67 | struct PyVarObject |
58 | 68 | added 3.2 |
| 69 | + members ob_base ob_size |
59 | 70 | struct PyMethodDef |
60 | 71 | added 3.2 |
| 72 | + full-abi |
61 | 73 | struct PyMemberDef |
62 | 74 | added 3.2 |
| 75 | + full-abi |
63 | 76 | struct PyGetSetDef |
64 | 77 | added 3.2 |
| 78 | + full-abi |
65 | 79 | struct PyModuleDef_Base |
66 | 80 | added 3.2 |
| 81 | + full-abi |
67 | 82 | struct PyModuleDef |
68 | 83 | added 3.2 |
| 84 | + full-abi |
69 | 85 | struct PyStructSequence_Field |
70 | 86 | added 3.2 |
| 87 | + full-abi |
71 | 88 | struct PyStructSequence_Desc |
72 | 89 | added 3.2 |
| 90 | + full-abi |
73 | 91 | struct PyType_Slot |
74 | 92 | added 3.2 |
| 93 | + full-abi |
75 | 94 | struct PyType_Spec |
76 | 95 | added 3.2 |
| 96 | + full-abi |
77 | 97 | struct PyThreadState |
78 | 98 | added 3.2 |
| 99 | + opaque |
79 | 100 | struct PyInterpreterState |
80 | 101 | added 3.2 |
| 102 | + opaque |
81 | 103 | struct PyFrameObject |
82 | 104 | added 3.2 |
| 105 | + opaque |
83 | 106 | struct symtable |
84 | 107 | added 3.2 |
| 108 | + opaque |
85 | 109 | struct PyWeakReference |
86 | 110 | added 3.2 |
| 111 | + opaque |
87 | 112 | struct PyLongObject |
88 | 113 | added 3.2 |
| 114 | + opaque |
89 | 115 | struct PyTypeObject |
90 | 116 | added 3.2 |
| 117 | + opaque |
91 | 118 |
|
92 | 119 | function PyType_FromSpec |
93 | 120 | added 3.2 |
@@ -299,11 +326,11 @@ typedef newfunc |
299 | 326 | added 3.2 |
300 | 327 | typedef allocfunc |
301 | 328 | added 3.2 |
302 | | -struct PyCFunction |
| 329 | +typedef PyCFunction |
303 | 330 | added 3.2 |
304 | | -struct PyCFunctionWithKeywords |
| 331 | +typedef PyCFunctionWithKeywords |
305 | 332 | added 3.2 |
306 | | -struct PyCapsule_Destructor |
| 333 | +typedef PyCapsule_Destructor |
307 | 334 | added 3.2 |
308 | 335 | typedef getter |
309 | 336 | added 3.2 |
@@ -1760,6 +1787,7 @@ function PyThread_get_stacksize |
1760 | 1787 | function PyThread_get_thread_ident |
1761 | 1788 | added 3.2 |
1762 | 1789 | function PyThread_get_thread_native_id |
| 1790 | + ifdef PY_HAVE_THREAD_NATIVE_ID |
1763 | 1791 | added 3.2 |
1764 | 1792 | function PyThread_init_thread |
1765 | 1793 | added 3.2 |
@@ -2194,6 +2222,7 @@ data PyStructSequence_UnnamedField |
2194 | 2222 | # Add stable Py_buffer API in Python 3.11 (https://bugs.python.org/issue45459) |
2195 | 2223 | struct Py_buffer |
2196 | 2224 | added 3.11 |
| 2225 | + full-abi |
2197 | 2226 | function PyObject_CheckBuffer |
2198 | 2227 | added 3.11 |
2199 | 2228 | function PyObject_GetBuffer |
|
0 commit comments