diff options
Diffstat (limited to 'Include/internal/_pystate.h')
-rw-r--r-- | Include/internal/_pystate.h | 93 |
1 files changed, 0 insertions, 93 deletions
diff --git a/Include/internal/_pystate.h b/Include/internal/_pystate.h deleted file mode 100644 index 9f2dea1..0000000 --- a/Include/internal/_pystate.h +++ /dev/null @@ -1,93 +0,0 @@ -#ifndef _Py_PYSTATE_H -#define _Py_PYSTATE_H -#ifdef __cplusplus -extern "C" { -#endif - -#include "pystate.h" -#include "pyatomic.h" - -#ifdef WITH_THREAD -#include "pythread.h" -#endif - -#include "_mem.h" -#include "_ceval.h" -#include "_warnings.h" - - -/* GIL state */ - -struct _gilstate_runtime_state { - int check_enabled; - /* Assuming the current thread holds the GIL, this is the - PyThreadState for the current thread. */ - _Py_atomic_address tstate_current; - PyThreadFrameGetter getframe; -#ifdef WITH_THREAD - /* The single PyInterpreterState used by this process' - GILState implementation - */ - /* TODO: Given interp_main, it may be possible to kill this ref */ - PyInterpreterState *autoInterpreterState; - int autoTLSkey; -#endif /* WITH_THREAD */ -}; - -/* hook for PyEval_GetFrame(), requested for Psyco */ -#define _PyThreadState_GetFrame _PyRuntime.gilstate.getframe - -/* Issue #26558: Flag to disable PyGILState_Check(). - If set to non-zero, PyGILState_Check() always return 1. */ -#define _PyGILState_check_enabled _PyRuntime.gilstate.check_enabled - - -/* Full Python runtime state */ - -typedef struct pyruntimestate { - int initialized; - int core_initialized; - PyThreadState *finalizing; - - struct pyinterpreters { -#ifdef WITH_THREAD - PyThread_type_lock mutex; -#endif - PyInterpreterState *head; - PyInterpreterState *main; - /* _next_interp_id is an auto-numbered sequence of small - integers. It gets initialized in _PyInterpreterState_Init(), - which is called in Py_Initialize(), and used in - PyInterpreterState_New(). A negative interpreter ID - indicates an error occurred. The main interpreter will - always have an ID of 0. Overflow results in a RuntimeError. - If that becomes a problem later then we can adjust, e.g. by - using a Python int. */ - int64_t next_id; - } interpreters; - -#define NEXITFUNCS 32 - void (*exitfuncs[NEXITFUNCS])(void); - int nexitfuncs; - void (*pyexitfunc)(void); - - struct _pyobj_runtime_state obj; - struct _gc_runtime_state gc; - struct _pymem_runtime_state mem; - struct _warnings_runtime_state warnings; - struct _ceval_runtime_state ceval; - struct _gilstate_runtime_state gilstate; - - // XXX Consolidate globals found via the check-c-globals script. -} _PyRuntimeState; - -PyAPI_DATA(_PyRuntimeState) _PyRuntime; -PyAPI_FUNC(void) _PyRuntimeState_Init(_PyRuntimeState *); -PyAPI_FUNC(void) _PyRuntimeState_Fini(_PyRuntimeState *); - -PyAPI_FUNC(void) _PyInterpreterState_Enable(_PyRuntimeState *); - -#ifdef __cplusplus -} -#endif -#endif /* !_Py_PYSTATE_H */ |