diff options
author | Brett Cannon <brett@python.org> | 2016-09-05 22:33:46 (GMT) |
---|---|---|
committer | Brett Cannon <brett@python.org> | 2016-09-05 22:33:46 (GMT) |
commit | 3cebf9387279d8b21369f55e205392199ad9b1a2 (patch) | |
tree | 3ab40b5c47ee4876a46d2ca6920b402a0e63cd16 /Include/pystate.h | |
parent | 625cb379f7e77457ca5be94e175d4b71a1d8989f (diff) | |
download | cpython-3cebf9387279d8b21369f55e205392199ad9b1a2.zip cpython-3cebf9387279d8b21369f55e205392199ad9b1a2.tar.gz cpython-3cebf9387279d8b21369f55e205392199ad9b1a2.tar.bz2 |
Implement the frame evaluation API aspect of PEP 523.
Diffstat (limited to 'Include/pystate.h')
-rw-r--r-- | Include/pystate.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/Include/pystate.h b/Include/pystate.h index f08618c..5a06773 100644 --- a/Include/pystate.h +++ b/Include/pystate.h @@ -12,10 +12,13 @@ extern "C" { struct _ts; /* Forward */ struct _is; /* Forward */ +struct _frame; /* Forward declaration for PyFrameObject. */ #ifdef Py_LIMITED_API typedef struct _is PyInterpreterState; #else +typedef PyObject* (*_PyFrameEvalFunction)(struct _frame *, int); + typedef struct _is { struct _is *next; @@ -42,14 +45,14 @@ typedef struct _is { PyObject *builtins_copy; PyObject *import_func; + /* Initialized to PyEval_EvalFrameDefault(). */ + _PyFrameEvalFunction eval_frame; } PyInterpreterState; #endif /* State unique per thread */ -struct _frame; /* Avoid including frameobject.h */ - #ifndef Py_LIMITED_API /* Py_tracefunc return -1 when raising an exception, or 0 for success. */ typedef int (*Py_tracefunc)(PyObject *, struct _frame *, int, PyObject *); |