bpo-42260: Reorganize PyConfig (GH-23149)

* Move orig_argv before argv
* Move program_name and platlibdir with other path configuration
  inputs

Give a name to the PyPreConfig and PyConfig structures and separate
the type definitions.
This commit is contained in:
Victor Stinner 2020-11-04 16:15:54 +01:00 committed by GitHub
parent 8021875bbc
commit cfb41e80c1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 5 additions and 5 deletions

View File

@ -41,7 +41,7 @@ PyAPI_FUNC(PyStatus) PyWideStringList_Insert(PyWideStringList *list,
/* --- PyPreConfig ----------------------------------------------- */ /* --- PyPreConfig ----------------------------------------------- */
typedef struct { typedef struct PyPreConfig {
int _config_init; /* _PyConfigInitEnum value */ int _config_init; /* _PyConfigInitEnum value */
/* Parse Py_PreInitializeFromBytesArgs() arguments? /* Parse Py_PreInitializeFromBytesArgs() arguments?
@ -128,7 +128,7 @@ PyAPI_FUNC(void) PyPreConfig_InitIsolatedConfig(PyPreConfig *config);
/* --- PyConfig ---------------------------------------------- */ /* --- PyConfig ---------------------------------------------- */
/* This structure is best documented in the Doc/c-api/init_config.rst file. */ /* This structure is best documented in the Doc/c-api/init_config.rst file. */
typedef struct { typedef struct PyConfig {
int _config_init; /* _PyConfigInitEnum value */ int _config_init; /* _PyConfigInitEnum value */
int isolated; int isolated;
@ -147,8 +147,8 @@ typedef struct {
wchar_t *filesystem_errors; wchar_t *filesystem_errors;
wchar_t *pycache_prefix; wchar_t *pycache_prefix;
int parse_argv; int parse_argv;
PyWideStringList orig_argv;
PyWideStringList argv; PyWideStringList argv;
wchar_t *program_name;
PyWideStringList xoptions; PyWideStringList xoptions;
PyWideStringList warnoptions; PyWideStringList warnoptions;
int site_import; int site_import;
@ -169,12 +169,13 @@ typedef struct {
int legacy_windows_stdio; int legacy_windows_stdio;
#endif #endif
wchar_t *check_hash_pycs_mode; wchar_t *check_hash_pycs_mode;
PyWideStringList orig_argv;
/* --- Path configuration inputs ------------ */ /* --- Path configuration inputs ------------ */
int pathconfig_warnings; int pathconfig_warnings;
wchar_t *program_name;
wchar_t *pythonpath_env; wchar_t *pythonpath_env;
wchar_t *home; wchar_t *home;
wchar_t *platlibdir;
/* --- Path configuration outputs ----------- */ /* --- Path configuration outputs ----------- */
int module_search_paths_set; int module_search_paths_set;
@ -185,7 +186,6 @@ typedef struct {
wchar_t *base_prefix; wchar_t *base_prefix;
wchar_t *exec_prefix; wchar_t *exec_prefix;
wchar_t *base_exec_prefix; wchar_t *base_exec_prefix;
wchar_t *platlibdir;
/* --- Parameter only used by Py_Main() ---------- */ /* --- Parameter only used by Py_Main() ---------- */
int skip_source_first_line; int skip_source_first_line;