mirror of
https://github.com/python/cpython.git
synced 2025-11-01 18:51:43 +00:00
gh-94673: Add _PyStaticType_InitBuiltin() (#95152)
This is the first of several precursors to storing tp_subclasses (and tp_weaklist) on the interpreter state for static builtin types.
We do the following:
* add `_PyStaticType_InitBuiltin()`
* add `_Py_TPFLAGS_STATIC_BUILTIN`
* set it on all static builtin types in `_PyStaticType_InitBuiltin()`
* shuffle some code around to be able to use _PyStaticType_InitBuiltin()
* rename `_PyStructSequence_InitType()` to `_PyStructSequence_InitBuiltinWithFlags()`
* add `_PyStructSequence_InitBuiltin()`.
This commit is contained in:
parent
c5140945c7
commit
4a1dd73431
13 changed files with 137 additions and 80 deletions
|
|
@ -352,6 +352,9 @@ given type object has a specified feature.
|
|||
|
||||
#ifndef Py_LIMITED_API
|
||||
|
||||
/* Track types initialized using _PyStaticType_InitBuiltin(). */
|
||||
#define _Py_TPFLAGS_STATIC_BUILTIN (1 << 1)
|
||||
|
||||
/* Placement of dict (and values) pointers are managed by the VM, not by the type.
|
||||
* The VM will automatically set tp_dictoffset. Should not be used for variable sized
|
||||
* classes, such as classes that extend tuple.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue