diff options
author | Victor Stinner <vstinner@python.org> | 2024-03-21 16:07:00 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-21 16:07:00 (GMT) |
commit | 8bea6c411d65cd987616b4ecdb86373e4f21f1c6 (patch) | |
tree | 962f984417dab800fbf4d21048a1fd8ba39202f0 /Include/internal | |
parent | 5a76d1be8ef371b75ca65166726923c249b5f615 (diff) | |
download | cpython-8bea6c411d65cd987616b4ecdb86373e4f21f1c6.zip cpython-8bea6c411d65cd987616b4ecdb86373e4f21f1c6.tar.gz cpython-8bea6c411d65cd987616b4ecdb86373e4f21f1c6.tar.bz2 |
gh-115754: Add Py_GetConstant() function (#116883)
Add Py_GetConstant() and Py_GetConstantBorrowed() functions.
In the limited C API version 3.13, getting Py_None, Py_False,
Py_True, Py_Ellipsis and Py_NotImplemented singletons is now
implemented as function calls at the stable ABI level to hide
implementation details. Getting these constants still return borrowed
references.
Add _testlimitedcapi/object.c and test_capi/test_object.py to test
Py_GetConstant() and Py_GetConstantBorrowed() functions.
Diffstat (limited to 'Include/internal')
-rw-r--r-- | Include/internal/pycore_object.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/Include/internal/pycore_object.h b/Include/internal/pycore_object.h index 759ec4d1..13fe543 100644 --- a/Include/internal/pycore_object.h +++ b/Include/internal/pycore_object.h @@ -716,6 +716,8 @@ PyAPI_DATA(PyTypeObject) _PyNotImplemented_Type; // Export for the stable ABI. PyAPI_DATA(int) _Py_SwappedOp[]; +extern void _Py_GetConstant_Init(void); + #ifdef __cplusplus } #endif |