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