Green shading in the line number column means the source is part of the translation unit, red means it is conditionally excluded. Highlighted line numbers link to the translation unit page. Highlighted macros link to the macro page.
1: 2: /* Interfaces to configure, query, create & destroy the Python runtime */ 3: 4: #ifndef Py_PYLIFECYCLE_H 5: #define Py_PYLIFECYCLE_H 6: #ifdef __cplusplus 7: extern "C" { 8: #endif 9: 10: PyAPI_FUNC(void) Py_SetProgramName(wchar_t *); 11: PyAPI_FUNC(wchar_t *) Py_GetProgramName(void); 12: 13: PyAPI_FUNC(void) Py_SetPythonHome(wchar_t *); 14: PyAPI_FUNC(wchar_t *) Py_GetPythonHome(void); 15: 16: #ifndef Py_LIMITED_API 17: /* Only used by applications that embed the interpreter and need to 18: * override the standard encoding determination mechanism 19: */ 20: PyAPI_FUNC(int) Py_SetStandardStreamEncoding(const char *encoding, 21: const char *errors); 22: #endif 23: 24: PyAPI_FUNC(void) Py_Initialize(void); 25: PyAPI_FUNC(void) Py_InitializeEx(int); 26: #ifndef Py_LIMITED_API 27: PyAPI_FUNC(void) _Py_InitializeEx_Private(int, int); 28: #endif 29: PyAPI_FUNC(void) Py_Finalize(void); 30: PyAPI_FUNC(int) Py_FinalizeEx(void); 31: PyAPI_FUNC(int) Py_IsInitialized(void); 32: PyAPI_FUNC(PyThreadState *) Py_NewInterpreter(void); 33: PyAPI_FUNC(void) Py_EndInterpreter(PyThreadState *); 34: 35: 36: /* Py_PyAtExit is for the atexit module, Py_AtExit is for low-level 37: * exit functions. 38: */ 39: #ifndef Py_LIMITED_API 40: PyAPI_FUNC(void) _Py_PyAtExit(void (*func)(void)); 41: #endif 42: PyAPI_FUNC(int) Py_AtExit(void (*func)(void)); 43: 44: PyAPI_FUNC(void) Py_Exit(int); 45: 46: /* Restore signals that the interpreter has called SIG_IGN on to SIG_DFL. */ 47: #ifndef Py_LIMITED_API 48: PyAPI_FUNC(void) _Py_RestoreSignals(void); 49: 50: PyAPI_FUNC(int) Py_FdIsInteractive(FILE *, const char *); 51: #endif 52: 53: /* Bootstrap __main__ (defined in Modules/main.c) */ 54: PyAPI_FUNC(int) Py_Main(int argc, wchar_t **argv); 55: 56: /* In getpath.c */ 57: PyAPI_FUNC(wchar_t *) Py_GetProgramFullPath(void); 58: PyAPI_FUNC(wchar_t *) Py_GetPrefix(void); 59: PyAPI_FUNC(wchar_t *) Py_GetExecPrefix(void); 60: PyAPI_FUNC(wchar_t *) Py_GetPath(void); 61: PyAPI_FUNC(void) Py_SetPath(const wchar_t *); 62: #ifdef MS_WINDOWS 63: int _Py_CheckPython3(); 64: #endif 65: 66: /* In their own files */ 67: PyAPI_FUNC(const char *) Py_GetVersion(void); 68: PyAPI_FUNC(const char *) Py_GetPlatform(void); 69: PyAPI_FUNC(const char *) Py_GetCopyright(void); 70: PyAPI_FUNC(const char *) Py_GetCompiler(void); 71: PyAPI_FUNC(const char *) Py_GetBuildInfo(void); 72: #ifndef Py_LIMITED_API 73: PyAPI_FUNC(const char *) _Py_gitidentifier(void); 74: PyAPI_FUNC(const char *) _Py_gitversion(void); 75: #endif 76: 77: /* Internal -- various one-time initializations */ 78: #ifndef Py_LIMITED_API 79: PyAPI_FUNC(PyObject *) _PyBuiltin_Init(void); 80: PyAPI_FUNC(PyObject *) _PySys_Init(void); 81: PyAPI_FUNC(void) _PyImport_Init(void); 82: PyAPI_FUNC(void) _PyExc_Init(PyObject * bltinmod); 83: PyAPI_FUNC(void) _PyImportHooks_Init(void); 84: PyAPI_FUNC(int) _PyFrame_Init(void); 85: PyAPI_FUNC(int) _PyFloat_Init(void); 86: PyAPI_FUNC(int) PyByteArray_Init(void); 87: PyAPI_FUNC(void) _PyRandom_Init(void); 88: #endif 89: 90: /* Various internal finalizers */ 91: #ifndef Py_LIMITED_API 92: PyAPI_FUNC(void) _PyExc_Fini(void); 93: PyAPI_FUNC(void) _PyImport_Fini(void); 94: PyAPI_FUNC(void) PyMethod_Fini(void); 95: PyAPI_FUNC(void) PyFrame_Fini(void); 96: PyAPI_FUNC(void) PyCFunction_Fini(void); 97: PyAPI_FUNC(void) PyDict_Fini(void); 98: PyAPI_FUNC(void) PyTuple_Fini(void); 99: PyAPI_FUNC(void) PyList_Fini(void); 100: PyAPI_FUNC(void) PySet_Fini(void); 101: PyAPI_FUNC(void) PyBytes_Fini(void); 102: PyAPI_FUNC(void) PyByteArray_Fini(void); 103: PyAPI_FUNC(void) PyFloat_Fini(void); 104: PyAPI_FUNC(void) PyOS_FiniInterrupts(void); 105: PyAPI_FUNC(void) _PyGC_DumpShutdownStats(void); 106: PyAPI_FUNC(void) _PyGC_Fini(void); 107: PyAPI_FUNC(void) PySlice_Fini(void); 108: PyAPI_FUNC(void) _PyType_Fini(void); 109: PyAPI_FUNC(void) _PyRandom_Fini(void); 110: PyAPI_FUNC(void) PyAsyncGen_Fini(void); 111: 112: PyAPI_DATA(PyThreadState *) _Py_Finalizing; 113: #endif 114: 115: /* Signals */ 116: typedef void (*PyOS_sighandler_t)(int); 117: PyAPI_FUNC(PyOS_sighandler_t) PyOS_getsig(int); 118: PyAPI_FUNC(PyOS_sighandler_t) PyOS_setsig(int, PyOS_sighandler_t); 119: 120: #ifndef Py_LIMITED_API 121: /* Random */ 122: PyAPI_FUNC(int) _PyOS_URandom(void *buffer, Py_ssize_t size); 123: PyAPI_FUNC(int) _PyOS_URandomNonblock(void *buffer, Py_ssize_t size); 124: #endif /* !Py_LIMITED_API */ 125: 126: #ifdef __cplusplus 127: } 128: #endif 129: #endif /* !Py_PYLIFECYCLE_H */ 130: