17db96d56Sopenharmony_ci#ifndef Py_CPYTHON_PYTHONRUN_H 27db96d56Sopenharmony_ci# error "this header file must not be included directly" 37db96d56Sopenharmony_ci#endif 47db96d56Sopenharmony_ci 57db96d56Sopenharmony_ciPyAPI_FUNC(int) PyRun_SimpleStringFlags(const char *, PyCompilerFlags *); 67db96d56Sopenharmony_ciPyAPI_FUNC(int) _PyRun_SimpleFileObject( 77db96d56Sopenharmony_ci FILE *fp, 87db96d56Sopenharmony_ci PyObject *filename, 97db96d56Sopenharmony_ci int closeit, 107db96d56Sopenharmony_ci PyCompilerFlags *flags); 117db96d56Sopenharmony_ciPyAPI_FUNC(int) PyRun_AnyFileExFlags( 127db96d56Sopenharmony_ci FILE *fp, 137db96d56Sopenharmony_ci const char *filename, /* decoded from the filesystem encoding */ 147db96d56Sopenharmony_ci int closeit, 157db96d56Sopenharmony_ci PyCompilerFlags *flags); 167db96d56Sopenharmony_ciPyAPI_FUNC(int) _PyRun_AnyFileObject( 177db96d56Sopenharmony_ci FILE *fp, 187db96d56Sopenharmony_ci PyObject *filename, 197db96d56Sopenharmony_ci int closeit, 207db96d56Sopenharmony_ci PyCompilerFlags *flags); 217db96d56Sopenharmony_ciPyAPI_FUNC(int) PyRun_SimpleFileExFlags( 227db96d56Sopenharmony_ci FILE *fp, 237db96d56Sopenharmony_ci const char *filename, /* decoded from the filesystem encoding */ 247db96d56Sopenharmony_ci int closeit, 257db96d56Sopenharmony_ci PyCompilerFlags *flags); 267db96d56Sopenharmony_ciPyAPI_FUNC(int) PyRun_InteractiveOneFlags( 277db96d56Sopenharmony_ci FILE *fp, 287db96d56Sopenharmony_ci const char *filename, /* decoded from the filesystem encoding */ 297db96d56Sopenharmony_ci PyCompilerFlags *flags); 307db96d56Sopenharmony_ciPyAPI_FUNC(int) PyRun_InteractiveOneObject( 317db96d56Sopenharmony_ci FILE *fp, 327db96d56Sopenharmony_ci PyObject *filename, 337db96d56Sopenharmony_ci PyCompilerFlags *flags); 347db96d56Sopenharmony_ciPyAPI_FUNC(int) PyRun_InteractiveLoopFlags( 357db96d56Sopenharmony_ci FILE *fp, 367db96d56Sopenharmony_ci const char *filename, /* decoded from the filesystem encoding */ 377db96d56Sopenharmony_ci PyCompilerFlags *flags); 387db96d56Sopenharmony_ciPyAPI_FUNC(int) _PyRun_InteractiveLoopObject( 397db96d56Sopenharmony_ci FILE *fp, 407db96d56Sopenharmony_ci PyObject *filename, 417db96d56Sopenharmony_ci PyCompilerFlags *flags); 427db96d56Sopenharmony_ci 437db96d56Sopenharmony_ci 447db96d56Sopenharmony_ciPyAPI_FUNC(PyObject *) PyRun_StringFlags(const char *, int, PyObject *, 457db96d56Sopenharmony_ci PyObject *, PyCompilerFlags *); 467db96d56Sopenharmony_ci 477db96d56Sopenharmony_ciPyAPI_FUNC(PyObject *) PyRun_FileExFlags( 487db96d56Sopenharmony_ci FILE *fp, 497db96d56Sopenharmony_ci const char *filename, /* decoded from the filesystem encoding */ 507db96d56Sopenharmony_ci int start, 517db96d56Sopenharmony_ci PyObject *globals, 527db96d56Sopenharmony_ci PyObject *locals, 537db96d56Sopenharmony_ci int closeit, 547db96d56Sopenharmony_ci PyCompilerFlags *flags); 557db96d56Sopenharmony_ci 567db96d56Sopenharmony_ci 577db96d56Sopenharmony_ciPyAPI_FUNC(PyObject *) Py_CompileStringExFlags( 587db96d56Sopenharmony_ci const char *str, 597db96d56Sopenharmony_ci const char *filename, /* decoded from the filesystem encoding */ 607db96d56Sopenharmony_ci int start, 617db96d56Sopenharmony_ci PyCompilerFlags *flags, 627db96d56Sopenharmony_ci int optimize); 637db96d56Sopenharmony_ciPyAPI_FUNC(PyObject *) Py_CompileStringObject( 647db96d56Sopenharmony_ci const char *str, 657db96d56Sopenharmony_ci PyObject *filename, int start, 667db96d56Sopenharmony_ci PyCompilerFlags *flags, 677db96d56Sopenharmony_ci int optimize); 687db96d56Sopenharmony_ci 697db96d56Sopenharmony_ci#define Py_CompileString(str, p, s) Py_CompileStringExFlags(str, p, s, NULL, -1) 707db96d56Sopenharmony_ci#define Py_CompileStringFlags(str, p, s, f) Py_CompileStringExFlags(str, p, s, f, -1) 717db96d56Sopenharmony_ci 727db96d56Sopenharmony_ci 737db96d56Sopenharmony_ciPyAPI_FUNC(const char *) _Py_SourceAsString( 747db96d56Sopenharmony_ci PyObject *cmd, 757db96d56Sopenharmony_ci const char *funcname, 767db96d56Sopenharmony_ci const char *what, 777db96d56Sopenharmony_ci PyCompilerFlags *cf, 787db96d56Sopenharmony_ci PyObject **cmd_copy); 797db96d56Sopenharmony_ci 807db96d56Sopenharmony_ci 817db96d56Sopenharmony_ci/* A function flavor is also exported by libpython. It is required when 827db96d56Sopenharmony_ci libpython is accessed directly rather than using header files which defines 837db96d56Sopenharmony_ci macros below. On Windows, for example, PyAPI_FUNC() uses dllexport to 847db96d56Sopenharmony_ci export functions in pythonXX.dll. */ 857db96d56Sopenharmony_ciPyAPI_FUNC(PyObject *) PyRun_String(const char *str, int s, PyObject *g, PyObject *l); 867db96d56Sopenharmony_ciPyAPI_FUNC(int) PyRun_AnyFile(FILE *fp, const char *name); 877db96d56Sopenharmony_ciPyAPI_FUNC(int) PyRun_AnyFileEx(FILE *fp, const char *name, int closeit); 887db96d56Sopenharmony_ciPyAPI_FUNC(int) PyRun_AnyFileFlags(FILE *, const char *, PyCompilerFlags *); 897db96d56Sopenharmony_ciPyAPI_FUNC(int) PyRun_SimpleString(const char *s); 907db96d56Sopenharmony_ciPyAPI_FUNC(int) PyRun_SimpleFile(FILE *f, const char *p); 917db96d56Sopenharmony_ciPyAPI_FUNC(int) PyRun_SimpleFileEx(FILE *f, const char *p, int c); 927db96d56Sopenharmony_ciPyAPI_FUNC(int) PyRun_InteractiveOne(FILE *f, const char *p); 937db96d56Sopenharmony_ciPyAPI_FUNC(int) PyRun_InteractiveLoop(FILE *f, const char *p); 947db96d56Sopenharmony_ciPyAPI_FUNC(PyObject *) PyRun_File(FILE *fp, const char *p, int s, PyObject *g, PyObject *l); 957db96d56Sopenharmony_ciPyAPI_FUNC(PyObject *) PyRun_FileEx(FILE *fp, const char *p, int s, PyObject *g, PyObject *l, int c); 967db96d56Sopenharmony_ciPyAPI_FUNC(PyObject *) PyRun_FileFlags(FILE *fp, const char *p, int s, PyObject *g, PyObject *l, PyCompilerFlags *flags); 977db96d56Sopenharmony_ci 987db96d56Sopenharmony_ci/* Use macros for a bunch of old variants */ 997db96d56Sopenharmony_ci#define PyRun_String(str, s, g, l) PyRun_StringFlags(str, s, g, l, NULL) 1007db96d56Sopenharmony_ci#define PyRun_AnyFile(fp, name) PyRun_AnyFileExFlags(fp, name, 0, NULL) 1017db96d56Sopenharmony_ci#define PyRun_AnyFileEx(fp, name, closeit) \ 1027db96d56Sopenharmony_ci PyRun_AnyFileExFlags(fp, name, closeit, NULL) 1037db96d56Sopenharmony_ci#define PyRun_AnyFileFlags(fp, name, flags) \ 1047db96d56Sopenharmony_ci PyRun_AnyFileExFlags(fp, name, 0, flags) 1057db96d56Sopenharmony_ci#define PyRun_SimpleString(s) PyRun_SimpleStringFlags(s, NULL) 1067db96d56Sopenharmony_ci#define PyRun_SimpleFile(f, p) PyRun_SimpleFileExFlags(f, p, 0, NULL) 1077db96d56Sopenharmony_ci#define PyRun_SimpleFileEx(f, p, c) PyRun_SimpleFileExFlags(f, p, c, NULL) 1087db96d56Sopenharmony_ci#define PyRun_InteractiveOne(f, p) PyRun_InteractiveOneFlags(f, p, NULL) 1097db96d56Sopenharmony_ci#define PyRun_InteractiveLoop(f, p) PyRun_InteractiveLoopFlags(f, p, NULL) 1107db96d56Sopenharmony_ci#define PyRun_File(fp, p, s, g, l) \ 1117db96d56Sopenharmony_ci PyRun_FileExFlags(fp, p, s, g, l, 0, NULL) 1127db96d56Sopenharmony_ci#define PyRun_FileEx(fp, p, s, g, l, c) \ 1137db96d56Sopenharmony_ci PyRun_FileExFlags(fp, p, s, g, l, c, NULL) 1147db96d56Sopenharmony_ci#define PyRun_FileFlags(fp, p, s, g, l, flags) \ 1157db96d56Sopenharmony_ci PyRun_FileExFlags(fp, p, s, g, l, 0, flags) 1167db96d56Sopenharmony_ci 1177db96d56Sopenharmony_ci 1187db96d56Sopenharmony_ci/* Stuff with no proper home (yet) */ 1197db96d56Sopenharmony_ciPyAPI_FUNC(char *) PyOS_Readline(FILE *, FILE *, const char *); 1207db96d56Sopenharmony_ciPyAPI_DATA(PyThreadState*) _PyOS_ReadlineTState; 1217db96d56Sopenharmony_ciPyAPI_DATA(char) *(*PyOS_ReadlineFunctionPointer)(FILE *, FILE *, const char *); 122