blob: 00c749949c4f18427584f128a3e8c04adc4f05fd [file] [log] [blame]
Victor Stinnerf4b1e3d2019-11-04 19:48:34 +01001#ifndef Py_CPYTHON_CEVAL_H
2# error "this header file must not be included directly"
3#endif
4
5#ifdef __cplusplus
6extern "C" {
7#endif
8
Victor Stinner51edf8a2019-11-16 01:04:44 +01009PyAPI_FUNC(void) PyEval_SetProfile(Py_tracefunc, PyObject *);
10PyAPI_FUNC(void) PyEval_SetTrace(Py_tracefunc, PyObject *);
11PyAPI_FUNC(int) _PyEval_GetCoroutineOriginTrackingDepth(void);
12PyAPI_FUNC(void) _PyEval_SetAsyncGenFirstiter(PyObject *);
13PyAPI_FUNC(PyObject *) _PyEval_GetAsyncGenFirstiter(void);
14PyAPI_FUNC(void) _PyEval_SetAsyncGenFinalizer(PyObject *);
15PyAPI_FUNC(PyObject *) _PyEval_GetAsyncGenFinalizer(void);
16
17/* Helper to look up a builtin object */
18PyAPI_FUNC(PyObject *) _PyEval_GetBuiltinId(_Py_Identifier *);
19/* Look at the current frame's (if any) code's co_flags, and turn on
20 the corresponding compiler flags in cf->cf_flags. Return 1 if any
21 flag was set, else return 0. */
22PyAPI_FUNC(int) PyEval_MergeCompilerFlags(PyCompilerFlags *cf);
23
Victor Stinner0b72b232020-03-12 23:18:39 +010024PyAPI_FUNC(PyObject *) _PyEval_EvalFrameDefault(PyThreadState *tstate, struct _frame *f, int exc);
Victor Stinner51edf8a2019-11-16 01:04:44 +010025
26PyAPI_FUNC(void) _PyEval_SetSwitchInterval(unsigned long microseconds);
27PyAPI_FUNC(unsigned long) _PyEval_GetSwitchInterval(void);
28
29PyAPI_FUNC(Py_ssize_t) _PyEval_RequestCodeExtraIndex(freefunc);
30
31PyAPI_FUNC(int) _PyEval_SliceIndex(PyObject *, Py_ssize_t *);
32PyAPI_FUNC(int) _PyEval_SliceIndexNotNone(PyObject *, Py_ssize_t *);
33
Victor Stinnerf4b1e3d2019-11-04 19:48:34 +010034#ifdef __cplusplus
35}
36#endif