PHP 8.2.30
Preview: pycore_initconfig.h Size: 6.23 KB
//opt/alt/python313/include/python3.13/internal/pycore_initconfig.h

#ifndef Py_INTERNAL_CORECONFIG_H
#define Py_INTERNAL_CORECONFIG_H
#ifdef __cplusplus
extern "C" {
#endif

#ifndef Py_BUILD_CORE
#  error "this header requires Py_BUILD_CORE define"
#endif

/* Forward declaration */
struct pyruntimestate;

/* --- PyStatus ----------------------------------------------- */

/* Almost all errors causing Python initialization to fail */
#ifdef _MSC_VER
   /* Visual Studio 2015 doesn't implement C99 __func__ in C */
#  define _PyStatus_GET_FUNC() __FUNCTION__
#else
#  define _PyStatus_GET_FUNC() __func__
#endif

#define _PyStatus_OK() \
    (PyStatus){._type = _PyStatus_TYPE_OK}
    /* other fields are set to 0 */
#define _PyStatus_ERR(ERR_MSG) \
    (PyStatus){ \
        ._type = _PyStatus_TYPE_ERROR, \
        .func = _PyStatus_GET_FUNC(), \
        .err_msg = (ERR_MSG)}
        /* other fields are set to 0 */
#define _PyStatus_NO_MEMORY_ERRMSG "memory allocation failed"
#define _PyStatus_NO_MEMORY() _PyStatus_ERR(_PyStatus_NO_MEMORY_ERRMSG)
#define _PyStatus_EXIT(EXITCODE) \
    (PyStatus){ \
        ._type = _PyStatus_TYPE_EXIT, \
        .exitcode = (EXITCODE)}
#define _PyStatus_IS_ERROR(err) \
    ((err)._type == _PyStatus_TYPE_ERROR)
#define _PyStatus_IS_EXIT(err) \
    ((err)._type == _PyStatus_TYPE_EXIT)
#define _PyStatus_EXCEPTION(err) \
    ((err)._type != _PyStatus_TYPE_OK)
#define _PyStatus_UPDATE_FUNC(err) \
    do { (err).func = _PyStatus_GET_FUNC(); } while (0)

// Export for '_testinternalcapi' shared extension
PyAPI_FUNC(void) _PyErr_SetFromPyStatus(PyStatus status);


/* --- PyWideStringList ------------------------------------------------ */

#define _PyWideStringList_INIT (PyWideStringList){.length = 0, .items = NULL}

#ifndef NDEBUG
extern int _PyWideStringList_CheckConsistency(const PyWideStringList *list);
#endif
extern void _PyWideStringList_Clear(PyWideStringList *list);
extern int _PyWideStringList_Copy(PyWideStringList *list,
    const PyWideStringList *list2);
extern PyStatus _PyWideStringList_Extend(PyWideStringList *list,
    const PyWideStringList *list2);
extern PyObject* _PyWideStringList_AsList(const PyWideStringList *list);


/* --- _PyArgv ---------------------------------------------------- */

typedef struct _PyArgv {
    Py_ssize_t argc;
    int use_bytes_argv;
    char * const *bytes_argv;
    wchar_t * const *wchar_argv;
} _PyArgv;

extern PyStatus _PyArgv_AsWstrList(const _PyArgv *args,
    PyWideStringList *list);


/* --- Helper functions ------------------------------------------- */

extern int _Py_str_to_int(
    const char *str,
    int *result);
extern const wchar_t* _Py_get_xoption(
    const PyWideStringList *xoptions,
    const wchar_t *name);
extern const char* _Py_GetEnv(
    int use_environment,
    const char *name);
extern void _Py_get_env_flag(
    int use_environment,
    int *flag,
    const char *name);

/* Py_GetArgcArgv() helper */
extern void _Py_ClearArgcArgv(void);


/* --- _PyPreCmdline ------------------------------------------------- */

typedef struct {
    PyWideStringList argv;
    PyWideStringList xoptions;     /* "-X value" option */
    int isolated;             /* -I option */
    int use_environment;      /* -E option */
    int dev_mode;             /* -X dev and PYTHONDEVMODE */
    int warn_default_encoding;     /* -X warn_default_encoding and PYTHONWARNDEFAULTENCODING */
} _PyPreCmdline;

#define _PyPreCmdline_INIT \
    (_PyPreCmdline){ \
        .use_environment = -1, \
        .isolated = -1, \
        .dev_mode = -1}
/* Note: _PyPreCmdline_INIT sets other fields to 0/NULL */

extern void _PyPreCmdline_Clear(_PyPreCmdline *cmdline);
extern PyStatus _PyPreCmdline_SetArgv(_PyPreCmdline *cmdline,
    const _PyArgv *args);
extern PyStatus _PyPreCmdline_SetConfig(
    const _PyPreCmdline *cmdline,
    PyConfig *config);
extern PyStatus _PyPreCmdline_Read(_PyPreCmdline *cmdline,
    const PyPreConfig *preconfig);


/* --- PyPreConfig ----------------------------------------------- */

// Export for '_testembed' program
PyAPI_FUNC(void) _PyPreConfig_InitCompatConfig(PyPreConfig *preconfig);

extern void _PyPreConfig_InitFromConfig(
    PyPreConfig *preconfig,
    const PyConfig *config);
extern PyStatus _PyPreConfig_InitFromPreConfig(
    PyPreConfig *preconfig,
    const PyPreConfig *config2);
extern PyObject* _PyPreConfig_AsDict(const PyPreConfig *preconfig);
extern void _PyPreConfig_GetConfig(PyPreConfig *preconfig,
    const PyConfig *config);
extern PyStatus _PyPreConfig_Read(PyPreConfig *preconfig,
    const _PyArgv *args);
extern PyStatus _PyPreConfig_Write(const PyPreConfig *preconfig);


/* --- PyConfig ---------------------------------------------- */

typedef enum {
    /* Py_Initialize() API: backward compatibility with Python 3.6 and 3.7 */
    _PyConfig_INIT_COMPAT = 1,
    _PyConfig_INIT_PYTHON = 2,
    _PyConfig_INIT_ISOLATED = 3
} _PyConfigInitEnum;

typedef enum {
    /* For now, this means the GIL is enabled.

       gh-116329: This will eventually change to "the GIL is disabled but can
       be reenabled by loading an incompatible extension module." */
    _PyConfig_GIL_DEFAULT = -1,

    /* The GIL has been forced off or on, and will not be affected by module loading. */
    _PyConfig_GIL_DISABLE = 0,
    _PyConfig_GIL_ENABLE = 1,
} _PyConfigGILEnum;

// Export for '_testembed' program
PyAPI_FUNC(void) _PyConfig_InitCompatConfig(PyConfig *config);

extern PyStatus _PyConfig_Copy(
    PyConfig *config,
    const PyConfig *config2);
extern PyStatus _PyConfig_InitPathConfig(
    PyConfig *config,
    int compute_path_config);
extern PyStatus _PyConfig_InitImportConfig(PyConfig *config);
extern PyStatus _PyConfig_Read(PyConfig *config, int compute_path_config);
extern PyStatus _PyConfig_Write(const PyConfig *config,
    struct pyruntimestate *runtime);
extern PyStatus _PyConfig_SetPyArgv(
    PyConfig *config,
    const _PyArgv *args);


extern void _Py_DumpPathConfig(PyThreadState *tstate);


/* --- Function used for testing ---------------------------------- */

// Export these functions for '_testinternalcapi' shared extension
PyAPI_FUNC(PyObject*) _PyConfig_AsDict(const PyConfig *config);
PyAPI_FUNC(int) _PyConfig_FromDict(PyConfig *config, PyObject *dict);
PyAPI_FUNC(PyObject*) _Py_Get_Getpath_CodeObject(void);
PyAPI_FUNC(PyObject*) _Py_GetConfigsAsDict(void);

#ifdef __cplusplus
}
#endif
#endif /* !Py_INTERNAL_CORECONFIG_H */

Directory Contents

Dirs: 1 × Files: 122

Name Size Perms Modified Actions
mimalloc DIR
- drwxr-xr-x 2026-02-10 08:09:23
Edit Download
1.87 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
2.96 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
30.78 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
6.62 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
1.40 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
3.81 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
5.88 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
8.57 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
2.05 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
4.98 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
3.84 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
5.99 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
397 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
1.03 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
11.10 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
3.83 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
19.71 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
2.41 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
3.66 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
588 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
2.64 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
1.15 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
7.78 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
11.84 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
543 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
11.98 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
732 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
1.69 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
685 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
3.11 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
900 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
2.19 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
9.25 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
2.65 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
1.46 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
1.45 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
480 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
12.08 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
4.70 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
1.50 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
12.66 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
859 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
490 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
2.14 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
3.02 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
115.04 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
26.08 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
3.65 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
4.26 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
515 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
7.55 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
3.96 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
6.23 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
2.11 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
2.28 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
14.72 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
1.71 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
527 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
1.82 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
2.36 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
8.34 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
9.73 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
427 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
1.60 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
3.27 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
1.54 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
435 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
27.28 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
2.13 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
2.33 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
942 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
26.78 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
1.89 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
82.88 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
2.07 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
8.11 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
3.27 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
2.04 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
658 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
2.79 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
7.87 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
510 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
4.84 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
2.75 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
4.36 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
8.40 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
5.24 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
3.44 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
9.73 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
420 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
758 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
5.95 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
5.39 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
346 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
12.86 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
12.74 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
45.72 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
1.69 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
951 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
2.86 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
369 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
5.06 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
1013 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
963 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
8.47 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
1.15 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
11.52 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
2.93 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
3.54 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
4.43 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
1.32 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
820 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
8.67 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
924 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
958 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
12.96 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
129.04 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
742 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
10.06 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
38.72 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download
840 B lrw-r--r-- 2025-12-05 16:06:33
Edit Download
3.80 KB lrw-r--r-- 2025-12-05 16:06:33
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).