gh-101476: Add _PyType_GetModuleState (GH-101477)

For fast module state access from heap type methods.
This commit is contained in:
Erlend E. Aasland 2023-02-23 22:42:15 +01:00 committed by GitHub
parent d43c2652d4
commit ccd98a3146
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 18 additions and 1 deletions

View file

@ -3,6 +3,7 @@
#include "pycore_call.h" // _PyObject_CallNoArgs()
#include "pycore_long.h" // _PyLong_GetZero()
#include "pycore_moduleobject.h" // _PyModule_GetState()
#include "pycore_typeobject.h" // _PyType_GetModuleState()
#include "pycore_object.h" // _PyObject_GC_TRACK()
#include "pycore_tuple.h" // _PyTuple_ITEMS()
#include "structmember.h" // PyMemberDef
@ -48,7 +49,7 @@ get_module_state(PyObject *mod)
static inline itertools_state *
get_module_state_by_cls(PyTypeObject *cls)
{
void *state = PyType_GetModuleState(cls);
void *state = _PyType_GetModuleState(cls);
assert(state != NULL);
return (itertools_state *)state;
}