@@ -9,34 +9,6 @@ extern "C" {
99#endif
1010
1111
12- /* --- _PyPreCmdline ------------------------------------------------- */
13-
14- typedef struct {
15- _PyWstrList argv ;
16- _PyWstrList xoptions ; /* "-X value" option */
17- int isolated ; /* -I option */
18- int use_environment ; /* -E option */
19- int dev_mode ; /* -X dev and PYTHONDEVMODE */
20- } _PyPreCmdline ;
21-
22- #define _PyPreCmdline_INIT \
23- (_PyPreCmdline){ \
24- .use_environment = -1, \
25- .isolated = -1, \
26- .dev_mode = -1}
27- /* Note: _PyPreCmdline_INIT sets other fields to 0/NULL */
28-
29- PyAPI_FUNC (void ) _PyPreCmdline_Clear (_PyPreCmdline * cmdline );
30- PyAPI_FUNC (_PyInitError ) _PyPreCmdline_SetArgv (_PyPreCmdline * cmdline ,
31- const _PyArgv * args );
32- PyAPI_FUNC (int ) _PyPreCmdline_SetCoreConfig (
33- const _PyPreCmdline * cmdline ,
34- _PyCoreConfig * config );
35- PyAPI_FUNC (_PyInitError ) _PyPreCmdline_Read (_PyPreCmdline * cmdline ,
36- const _PyPreConfig * preconfig ,
37- const _PyCoreConfig * coreconfig );
38-
39-
4012/* --- _PyWstrList ------------------------------------------------ */
4113
4214#ifndef NDEBUG
@@ -54,15 +26,17 @@ PyAPI_FUNC(int) _PyWstrList_Extend(_PyWstrList *list,
5426
5527/* --- _PyArgv ---------------------------------------------------- */
5628
29+ typedef struct {
30+ int argc ;
31+ int use_bytes_argv ;
32+ char * * bytes_argv ;
33+ wchar_t * * wchar_argv ;
34+ } _PyArgv ;
35+
5736PyAPI_FUNC (_PyInitError ) _PyArgv_AsWstrList (const _PyArgv * args ,
5837 _PyWstrList * list );
5938
6039
61- /* --- Py_GetArgcArgv() helpers ----------------------------------- */
62-
63- PyAPI_FUNC (void ) _Py_ClearArgcArgv (void );
64-
65-
6640/* --- Helper functions ------------------------------------------- */
6741
6842PyAPI_FUNC (int ) _Py_str_to_int (
@@ -79,15 +53,47 @@ PyAPI_FUNC(void) _Py_get_env_flag(
7953 int * flag ,
8054 const char * name );
8155
56+ /* Py_GetArgcArgv() helper */
57+ PyAPI_FUNC (void ) _Py_ClearArgcArgv (void );
58+
59+
60+ /* --- _PyPreCmdline ------------------------------------------------- */
61+
62+ typedef struct {
63+ _PyWstrList argv ;
64+ _PyWstrList xoptions ; /* "-X value" option */
65+ int isolated ; /* -I option */
66+ int use_environment ; /* -E option */
67+ int dev_mode ; /* -X dev and PYTHONDEVMODE */
68+ } _PyPreCmdline ;
69+
70+ #define _PyPreCmdline_INIT \
71+ (_PyPreCmdline){ \
72+ .use_environment = -1, \
73+ .isolated = -1, \
74+ .dev_mode = -1}
75+ /* Note: _PyPreCmdline_INIT sets other fields to 0/NULL */
76+
77+ PyAPI_FUNC (void ) _PyPreCmdline_Clear (_PyPreCmdline * cmdline );
78+ PyAPI_FUNC (_PyInitError ) _PyPreCmdline_SetArgv (_PyPreCmdline * cmdline ,
79+ const _PyArgv * args );
80+ PyAPI_FUNC (int ) _PyPreCmdline_SetCoreConfig (
81+ const _PyPreCmdline * cmdline ,
82+ _PyCoreConfig * config );
83+ PyAPI_FUNC (_PyInitError ) _PyPreCmdline_Read (_PyPreCmdline * cmdline ,
84+ const _PyPreConfig * preconfig );
85+
86+
8287/* --- _PyPreConfig ----------------------------------------------- */
8388
8489PyAPI_FUNC (void ) _PyPreConfig_Clear (_PyPreConfig * config );
8590PyAPI_FUNC (int ) _PyPreConfig_Copy (_PyPreConfig * config ,
8691 const _PyPreConfig * config2 );
8792PyAPI_FUNC (PyObject * ) _PyPreConfig_AsDict (const _PyPreConfig * config );
93+ PyAPI_FUNC (void ) _PyCoreConfig_GetCoreConfig (_PyPreConfig * config ,
94+ const _PyCoreConfig * core_config );
8895PyAPI_FUNC (_PyInitError ) _PyPreConfig_Read (_PyPreConfig * config ,
89- const _PyArgv * args ,
90- const _PyCoreConfig * coreconfig );
96+ const _PyArgv * args );
9197PyAPI_FUNC (_PyInitError ) _PyPreConfig_Write (_PyPreConfig * config );
9298
9399
0 commit comments