bpo-45459: Use type names in the internal C API (GH-31669)

Replace "struct xxx" with "xxx" types in the internal C API.
This commit is contained in:
Victor Stinner 2022-03-03 23:08:07 +01:00 committed by GitHub
parent 0b63215bb1
commit 32f0c82717
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 11 additions and 14 deletions

View File

@ -79,12 +79,12 @@ struct atexit_state {
*/ */
struct _is { struct _is {
struct _is *next; PyInterpreterState *next;
struct pythreads { struct pythreads {
uint64_t next_unique_id; uint64_t next_unique_id;
/* The linked list of threads, newest first. */ /* The linked list of threads, newest first. */
struct _ts *head; PyThreadState *head;
/* Used in Modules/_threadmodule.c. */ /* Used in Modules/_threadmodule.c. */
long count; long count;
/* Support for runtime thread stack size tuning. /* Support for runtime thread stack size tuning.
@ -190,7 +190,7 @@ struct _is {
*/ */
/* the initial PyInterpreterState.threads.head */ /* the initial PyInterpreterState.threads.head */
struct _ts _initial_thread; PyThreadState _initial_thread;
}; };
@ -214,11 +214,11 @@ struct _xidregitem {
struct _xidregitem *next; struct _xidregitem *next;
}; };
PyAPI_FUNC(struct _is*) _PyInterpreterState_LookUpID(int64_t); PyAPI_FUNC(PyInterpreterState*) _PyInterpreterState_LookUpID(int64_t);
PyAPI_FUNC(int) _PyInterpreterState_IDInitref(struct _is *); PyAPI_FUNC(int) _PyInterpreterState_IDInitref(PyInterpreterState *);
PyAPI_FUNC(int) _PyInterpreterState_IDIncref(struct _is *); PyAPI_FUNC(int) _PyInterpreterState_IDIncref(PyInterpreterState *);
PyAPI_FUNC(void) _PyInterpreterState_IDDecref(struct _is *); PyAPI_FUNC(void) _PyInterpreterState_IDDecref(PyInterpreterState *);
#ifdef __cplusplus #ifdef __cplusplus
} }

View File

@ -11,7 +11,7 @@ extern "C" {
typedef struct { typedef struct {
PyObject_HEAD PyObject_HEAD
PyObject *md_dict; PyObject *md_dict;
struct PyModuleDef *md_def; PyModuleDef *md_def;
void *md_state; void *md_state;
PyObject *md_weaklist; PyObject *md_weaklist;
// for logging purposes after md_dict is cleared // for logging purposes after md_dict is cleared

View File

@ -172,7 +172,7 @@ extern void _PySignal_AfterFork(void);
PyAPI_FUNC(int) _PyState_AddModule( PyAPI_FUNC(int) _PyState_AddModule(
PyThreadState *tstate, PyThreadState *tstate,
PyObject* module, PyObject* module,
struct PyModuleDef* def); PyModuleDef* def);
PyAPI_FUNC(int) _PyOS_InterruptOccurred(PyThreadState *tstate); PyAPI_FUNC(int) _PyOS_InterruptOccurred(PyThreadState *tstate);

View File

@ -11,7 +11,7 @@ extern "C" {
#include "pycore_atomic.h" /* _Py_atomic_address */ #include "pycore_atomic.h" /* _Py_atomic_address */
#include "pycore_gil.h" // struct _gil_runtime_state #include "pycore_gil.h" // struct _gil_runtime_state
#include "pycore_global_objects.h" // struct _Py_global_objects #include "pycore_global_objects.h" // struct _Py_global_objects
#include "pycore_interp.h" // struct _is #include "pycore_interp.h" // PyInterpreterState
#include "pycore_unicodeobject.h" // struct _Py_unicode_runtime_ids #include "pycore_unicodeobject.h" // struct _Py_unicode_runtime_ids

View File

@ -8,9 +8,6 @@ extern "C" {
# error "this header requires Py_BUILD_CORE define" # error "this header requires Py_BUILD_CORE define"
#endif #endif
/* Forward declaration */
struct _is;
/* Write the Python traceback into the file 'fd'. For example: /* Write the Python traceback into the file 'fd'. For example:
Traceback (most recent call first): Traceback (most recent call first):
@ -57,7 +54,7 @@ PyAPI_FUNC(void) _Py_DumpTraceback(
PyAPI_FUNC(const char*) _Py_DumpTracebackThreads( PyAPI_FUNC(const char*) _Py_DumpTracebackThreads(
int fd, int fd,
struct _is *interp, PyInterpreterState *interp,
PyThreadState *current_tstate); PyThreadState *current_tstate);
/* Write a Unicode object into the file descriptor fd. Encode the string to /* Write a Unicode object into the file descriptor fd. Encode the string to