/** Mirror _traceback.h Traceback interface */ module deimos.python.traceback; import deimos.python.pyport; import deimos.python.object; import deimos.python.frameobject; extern(C): // Python-header-file: Include/traceback.h: /// _ struct PyTracebackObject { mixin PyObject_HEAD; /// _ PyTracebackObject* tb_next; /// _ PyFrameObject* tb_frame; /// _ int tb_lasti; /// _ int tb_lineno; } /// _ int PyTraceBack_Here(PyFrameObject*); /// _ int PyTraceBack_Print(PyObject*, PyObject*); version(Python_3_2_Or_Later) { /// Availability: >= 3.2 int _Py_DisplaySourceLine(PyObject*, PyObject*, int, int); }else version(Python_2_6_Or_Later){ /// Availability: 2.6, 2.7, 3.0 int _Py_DisplaySourceLine(PyObject*, const(char)*, int, int); } /// _ mixin(PyAPI_DATA!"PyTypeObject PyTraceBack_Type"); // D translation of C macro: /// _ int PyTraceBack_Check()(PyObject* v) { return v.ob_type == &PyTraceBack_Type; }