• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #ifndef Py_CPYTHON_PYLIFECYCLE_H
2 #  error "this header file must not be included directly"
3 #endif
4 
5 #ifdef __cplusplus
6 extern "C" {
7 #endif
8 
9 /* Only used by applications that embed the interpreter and need to
10  * override the standard encoding determination mechanism
11  */
12 PyAPI_FUNC(int) Py_SetStandardStreamEncoding(const char *encoding,
13                                              const char *errors);
14 
15 /* PEP 432 Multi-phase initialization API (Private while provisional!) */
16 
17 PyAPI_FUNC(PyStatus) Py_PreInitialize(
18     const PyPreConfig *src_config);
19 PyAPI_FUNC(PyStatus) Py_PreInitializeFromBytesArgs(
20     const PyPreConfig *src_config,
21     Py_ssize_t argc,
22     char **argv);
23 PyAPI_FUNC(PyStatus) Py_PreInitializeFromArgs(
24     const PyPreConfig *src_config,
25     Py_ssize_t argc,
26     wchar_t **argv);
27 
28 PyAPI_FUNC(int) _Py_IsCoreInitialized(void);
29 
30 
31 /* Initialization and finalization */
32 
33 PyAPI_FUNC(PyStatus) Py_InitializeFromConfig(
34     const PyConfig *config);
35 PyAPI_FUNC(PyStatus) _Py_InitializeFromArgs(
36     const PyConfig *config,
37     Py_ssize_t argc,
38     char * const *argv);
39 PyAPI_FUNC(PyStatus) _Py_InitializeFromWideArgs(
40     const PyConfig *config,
41     Py_ssize_t argc,
42     wchar_t * const *argv);
43 PyAPI_FUNC(PyStatus) _Py_InitializeMain(void);
44 
45 PyAPI_FUNC(int) Py_RunMain(void);
46 
47 
48 PyAPI_FUNC(void) _Py_NO_RETURN Py_ExitStatusException(PyStatus err);
49 
50 /* Py_PyAtExit is for the atexit module, Py_AtExit is for low-level
51  * exit functions.
52  */
53 PyAPI_FUNC(void) _Py_PyAtExit(void (*func)(PyObject *), PyObject *);
54 
55 /* Restore signals that the interpreter has called SIG_IGN on to SIG_DFL. */
56 PyAPI_FUNC(void) _Py_RestoreSignals(void);
57 
58 PyAPI_FUNC(int) Py_FdIsInteractive(FILE *, const char *);
59 
60 PyAPI_FUNC(void) _Py_SetProgramFullPath(const wchar_t *);
61 
62 PyAPI_FUNC(const char *) _Py_gitidentifier(void);
63 PyAPI_FUNC(const char *) _Py_gitversion(void);
64 
65 PyAPI_FUNC(int) _Py_IsFinalizing(void);
66 
67 /* Random */
68 PyAPI_FUNC(int) _PyOS_URandom(void *buffer, Py_ssize_t size);
69 PyAPI_FUNC(int) _PyOS_URandomNonblock(void *buffer, Py_ssize_t size);
70 
71 /* Legacy locale support */
72 PyAPI_FUNC(int) _Py_CoerceLegacyLocale(int warn);
73 PyAPI_FUNC(int) _Py_LegacyLocaleDetected(int warn);
74 PyAPI_FUNC(char *) _Py_SetLocaleFromEnv(int category);
75 
76 #ifdef __cplusplus
77 }
78 #endif
79