1
2/* Interfaces to parse and execute pieces of python code */
3
4#ifndef Py_PYTHONRUN_H
5#define Py_PYTHONRUN_H
6#ifdef __cplusplus
7extern "C" {
8#endif
9
10PyAPI_FUNC(PyObject *) Py_CompileString(const char *, const char *, int);
11
12PyAPI_FUNC(void) PyErr_Print(void);
13PyAPI_FUNC(void) PyErr_PrintEx(int);
14PyAPI_FUNC(void) PyErr_Display(PyObject *, PyObject *, PyObject *);
15
16
17/* Stuff with no proper home (yet) */
18PyAPI_DATA(int) (*PyOS_InputHook)(void);
19
20/* Stack size, in "pointers" (so we get extra safety margins
21 on 64-bit platforms). On a 32-bit platform, this translates
22 to an 8k margin. */
23#define PYOS_STACK_MARGIN 2048
24
25#if defined(WIN32) && !defined(MS_WIN64) && !defined(_M_ARM) && defined(_MSC_VER) && _MSC_VER >= 1300
26/* Enable stack checking under Microsoft C */
27#define USE_STACKCHECK
28#endif
29
30#ifdef USE_STACKCHECK
31/* Check that we aren't overflowing our stack */
32PyAPI_FUNC(int) PyOS_CheckStack(void);
33#endif
34
35#ifndef Py_LIMITED_API
36# define Py_CPYTHON_PYTHONRUN_H
37# include "cpython/pythonrun.h"
38# undef Py_CPYTHON_PYTHONRUN_H
39#endif
40
41#ifdef __cplusplus
42}
43#endif
44#endif /* !Py_PYTHONRUN_H */
45