mirror of
https://github.com/python/cpython.git
synced 2025-11-18 18:31:56 +00:00
* gh-131525: Cache the result of tuple_hash * Fix debug builds * Add blurb * Fix formatting * Pre-compute empty tuple singleton * Mostly set the cache within tuple_alloc * Fixes for TSAN * Pre-compute empty tuple singleton * Fix for 32-bit platforms * Assert that op != NULL in _PyTuple_RESET_HASH_CACHE * Use FT_ATOMIC_STORE_SSIZE_RELAXED macro * Update Include/internal/pycore_tuple.h Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com> * Fix alignment * atomic load * Update Objects/tupleobject.c Co-authored-by: Chris Eibl <138194463+chris-eibl@users.noreply.github.com> --------- Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com> Co-authored-by: Chris Eibl <138194463+chris-eibl@users.noreply.github.com> |
||
|---|---|---|
| .. | ||
| clinic | ||
| abstract.c | ||
| buffer.c | ||
| bytes.c | ||
| code.c | ||
| codec.c | ||
| complex.c | ||
| config.c | ||
| datetime.c | ||
| dict.c | ||
| docstring.c | ||
| exceptions.c | ||
| file.c | ||
| float.c | ||
| frame.c | ||
| function.c | ||
| gc.c | ||
| getargs.c | ||
| hash.c | ||
| heaptype.c | ||
| immortal.c | ||
| import.c | ||
| list.c | ||
| long.c | ||
| mem.c | ||
| monitoring.c | ||
| numbers.c | ||
| object.c | ||
| parts.h | ||
| pyatomic.c | ||
| README.txt | ||
| run.c | ||
| set.c | ||
| structmember.c | ||
| time.c | ||
| tuple.c | ||
| type.c | ||
| unicode.c | ||
| util.h | ||
| vectorcall.c | ||
| watchers.c | ||
Tests in this directory are compiled into the _testcapi extension. The main file for the extension is Modules/_testcapimodule.c, which calls `_PyTestCapi_Init_*` from these functions. General guideline when writing test code for C API. * Use Argument Clinic to minimise the amount of boilerplate code. * Add a newline between the argument spec and the docstring. * If a test description is needed, make sure the added docstring clearly and succinctly describes purpose of the function. * DRY, use the clone feature of Argument Clinic. * Try to avoid adding new interned strings; reuse existing parameter names if possible. Use the `as` feature of Argument Clinic to override the C variable name, if needed.