Skip to content

Commit c1331ad

Browse files
authored
gh-106320: Remove private _PyModule API (#107070)
Move private _PyModule API to the internal C API (pycore_moduleobject.h): * _PyModule_Clear() * _PyModule_ClearDict() * _PyModuleSpec_IsInitializing() * _PyModule_IsExtension() No longer export these functions.
1 parent 0927a2b commit c1331ad

File tree

2 files changed

+6
-11
lines changed

2 files changed

+6
-11
lines changed

Include/internal/pycore_moduleobject.h

+6
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,12 @@ extern "C" {
88
# error "this header requires Py_BUILD_CORE define"
99
#endif
1010

11+
extern void _PyModule_Clear(PyObject *);
12+
extern void _PyModule_ClearDict(PyObject *);
13+
extern int _PyModuleSpec_IsInitializing(PyObject *);
14+
15+
extern int _PyModule_IsExtension(PyObject *obj);
16+
1117
typedef struct {
1218
PyObject_HEAD
1319
PyObject *md_dict;

Include/moduleobject.h

-11
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,6 @@ PyAPI_FUNC(PyObject *) PyModule_GetNameObject(PyObject *);
2727
PyAPI_FUNC(const char *) PyModule_GetName(PyObject *);
2828
Py_DEPRECATED(3.2) PyAPI_FUNC(const char *) PyModule_GetFilename(PyObject *);
2929
PyAPI_FUNC(PyObject *) PyModule_GetFilenameObject(PyObject *);
30-
#ifndef Py_LIMITED_API
31-
PyAPI_FUNC(void) _PyModule_Clear(PyObject *);
32-
PyAPI_FUNC(void) _PyModule_ClearDict(PyObject *);
33-
PyAPI_FUNC(int) _PyModuleSpec_IsInitializing(PyObject *);
34-
#endif
3530
PyAPI_FUNC(PyModuleDef*) PyModule_GetDef(PyObject*);
3631
PyAPI_FUNC(void*) PyModule_GetState(PyObject*);
3732

@@ -103,12 +98,6 @@ struct PyModuleDef {
10398
freefunc m_free;
10499
};
105100

106-
107-
// Internal C API
108-
#ifdef Py_BUILD_CORE
109-
extern int _PyModule_IsExtension(PyObject *obj);
110-
#endif
111-
112101
#ifdef __cplusplus
113102
}
114103
#endif

0 commit comments

Comments
 (0)