Branch data Line data Source code
1 : : #ifndef Py_INTERNAL_PYERRORS_H 2 : : #define Py_INTERNAL_PYERRORS_H 3 : : #ifdef __cplusplus 4 : : extern "C" { 5 : : #endif 6 : : 7 : : #ifndef Py_BUILD_CORE 8 : : # error "this header requires Py_BUILD_CORE define" 9 : : #endif 10 : : 11 : : 12 : : /* runtime lifecycle */ 13 : : 14 : : extern PyStatus _PyErr_InitTypes(PyInterpreterState *); 15 : : extern void _PyErr_FiniTypes(PyInterpreterState *); 16 : : 17 : : 18 : : /* other API */ 19 : : 20 : 1052507237 : static inline PyObject* _PyErr_Occurred(PyThreadState *tstate) 21 : : { 22 : : assert(tstate != NULL); 23 : 1052507237 : return tstate->curexc_type; 24 : : } 25 : : 26 : 34126484 : static inline void _PyErr_ClearExcState(_PyErr_StackItem *exc_state) 27 : : { 28 [ + + ]: 34126484 : Py_CLEAR(exc_state->exc_value); 29 : 34126484 : } 30 : : 31 : : PyAPI_FUNC(PyObject*) _PyErr_StackItemToExcInfoTuple( 32 : : _PyErr_StackItem *err_info); 33 : : 34 : : PyAPI_FUNC(void) _PyErr_Fetch( 35 : : PyThreadState *tstate, 36 : : PyObject **type, 37 : : PyObject **value, 38 : : PyObject **traceback); 39 : : 40 : : PyAPI_FUNC(int) _PyErr_ExceptionMatches( 41 : : PyThreadState *tstate, 42 : : PyObject *exc); 43 : : 44 : : PyAPI_FUNC(void) _PyErr_Restore( 45 : : PyThreadState *tstate, 46 : : PyObject *type, 47 : : PyObject *value, 48 : : PyObject *traceback); 49 : : 50 : : PyAPI_FUNC(void) _PyErr_SetObject( 51 : : PyThreadState *tstate, 52 : : PyObject *type, 53 : : PyObject *value); 54 : : 55 : : PyAPI_FUNC(void) _PyErr_ChainStackItem( 56 : : _PyErr_StackItem *exc_info); 57 : : 58 : : PyAPI_FUNC(void) _PyErr_Clear(PyThreadState *tstate); 59 : : 60 : : PyAPI_FUNC(void) _PyErr_SetNone(PyThreadState *tstate, PyObject *exception); 61 : : 62 : : PyAPI_FUNC(PyObject *) _PyErr_NoMemory(PyThreadState *tstate); 63 : : 64 : : PyAPI_FUNC(void) _PyErr_SetString( 65 : : PyThreadState *tstate, 66 : : PyObject *exception, 67 : : const char *string); 68 : : 69 : : PyAPI_FUNC(PyObject *) _PyErr_Format( 70 : : PyThreadState *tstate, 71 : : PyObject *exception, 72 : : const char *format, 73 : : ...); 74 : : 75 : : PyAPI_FUNC(void) _PyErr_NormalizeException( 76 : : PyThreadState *tstate, 77 : : PyObject **exc, 78 : : PyObject **val, 79 : : PyObject **tb); 80 : : 81 : : PyAPI_FUNC(PyObject *) _PyErr_FormatFromCauseTstate( 82 : : PyThreadState *tstate, 83 : : PyObject *exception, 84 : : const char *format, 85 : : ...); 86 : : 87 : : PyAPI_FUNC(PyObject *) _PyExc_CreateExceptionGroup( 88 : : const char *msg, 89 : : PyObject *excs); 90 : : 91 : : PyAPI_FUNC(PyObject *) _PyExc_PrepReraiseStar( 92 : : PyObject *orig, 93 : : PyObject *excs); 94 : : 95 : : PyAPI_FUNC(int) _PyErr_CheckSignalsTstate(PyThreadState *tstate); 96 : : 97 : : PyAPI_FUNC(void) _Py_DumpExtensionModules(int fd, PyInterpreterState *interp); 98 : : 99 : : extern PyObject* _Py_Offer_Suggestions(PyObject* exception); 100 : : PyAPI_FUNC(Py_ssize_t) _Py_UTF8_Edit_Cost(PyObject *str_a, PyObject *str_b, 101 : : Py_ssize_t max_cost); 102 : : 103 : : #ifdef __cplusplus 104 : : } 105 : : #endif 106 : : #endif /* !Py_INTERNAL_PYERRORS_H */