Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes15kdownloads
pycore_pyerrors.h214 linesDownload Raw Back to internal
1#ifndef Py_INTERNAL_PYERRORS_H2#define Py_INTERNAL_PYERRORS_H3#ifdef __cplusplus4extern "C" {5#endif6 7#ifndef Py_BUILD_CORE8#  error "this header requires Py_BUILD_CORE define"9#endif10 11 12/* Error handling definitions */13 14extern _PyErr_StackItem* _PyErr_GetTopmostException(PyThreadState *tstate);15extern PyObject* _PyErr_GetHandledException(PyThreadState *);16extern void _PyErr_SetHandledException(PyThreadState *, PyObject *);17extern void _PyErr_GetExcInfo(PyThreadState *, PyObject **, PyObject **, PyObject **);18 19// Export for '_testinternalcapi' shared extension20PyAPI_FUNC(void) _PyErr_SetKeyError(PyObject *);21 22 23// Like PyErr_Format(), but saves current exception as __context__ and24// __cause__.25// Export for '_sqlite3' shared extension.26PyAPI_FUNC(PyObject*) _PyErr_FormatFromCause(27    PyObject *exception,28    const char *format,   /* ASCII-encoded string  */29    ...30    );31 32extern int _PyException_AddNote(33     PyObject *exc,34     PyObject *note);35 36extern int _PyErr_CheckSignals(void);37 38/* Support for adding program text to SyntaxErrors */39 40// Export for test_peg_generator41PyAPI_FUNC(PyObject*) _PyErr_ProgramDecodedTextObject(42    PyObject *filename,43    int lineno,44    const char* encoding);45 46extern PyObject* _PyUnicodeTranslateError_Create(47    PyObject *object,48    Py_ssize_t start,49    Py_ssize_t end,50    const char *reason          /* UTF-8 encoded string */51    );52 53extern void _Py_NO_RETURN _Py_FatalErrorFormat(54    const char *func,55    const char *format,56    ...);57 58extern PyObject* _PyErr_SetImportErrorWithNameFrom(59        PyObject *,60        PyObject *,61        PyObject *,62        PyObject *);63extern int _PyErr_SetModuleNotFoundError(PyObject *name);64 65 66/* runtime lifecycle */67 68extern PyStatus _PyErr_InitTypes(PyInterpreterState *);69extern void _PyErr_FiniTypes(PyInterpreterState *);70 71 72/* other API */73 74static inline PyObject* _PyErr_Occurred(PyThreadState *tstate)75{76    assert(tstate != NULL);77    if (tstate->current_exception == NULL) {78        return NULL;79    }80    return (PyObject *)Py_TYPE(tstate->current_exception);81}82 83static inline void _PyErr_ClearExcState(_PyErr_StackItem *exc_state)84{85    Py_CLEAR(exc_state->exc_value);86}87 88extern PyObject* _PyErr_StackItemToExcInfoTuple(89    _PyErr_StackItem *err_info);90 91extern void _PyErr_Fetch(92    PyThreadState *tstate,93    PyObject **type,94    PyObject **value,95    PyObject **traceback);96 97PyAPI_FUNC(PyObject*) _PyErr_GetRaisedException(PyThreadState *tstate);98 99PyAPI_FUNC(int) _PyErr_ExceptionMatches(100    PyThreadState *tstate,101    PyObject *exc);102 103PyAPI_FUNC(void) _PyErr_SetRaisedException(PyThreadState *tstate, PyObject *exc);104 105extern void _PyErr_Restore(106    PyThreadState *tstate,107    PyObject *type,108    PyObject *value,109    PyObject *traceback);110 111extern void _PyErr_SetObject(112    PyThreadState *tstate,113    PyObject *type,114    PyObject *value);115 116extern void _PyErr_ChainStackItem(void);117extern void _PyErr_ChainExceptions1Tstate(PyThreadState *, PyObject *);118 119PyAPI_FUNC(void) _PyErr_Clear(PyThreadState *tstate);120 121extern void _PyErr_SetNone(PyThreadState *tstate, PyObject *exception);122 123extern PyObject* _PyErr_NoMemory(PyThreadState *tstate);124 125extern int _PyErr_EmitSyntaxWarning(PyObject *msg, PyObject *filename, int lineno, int col_offset,126                                    int end_lineno, int end_col_offset);127extern void _PyErr_RaiseSyntaxError(PyObject *msg, PyObject *filename, int lineno, int col_offset,128                                    int end_lineno, int end_col_offset);129 130PyAPI_FUNC(void) _PyErr_SetString(131    PyThreadState *tstate,132    PyObject *exception,133    const char *string);134 135/*136 * Set an exception with the error message decoded from the current locale137 * encoding (LC_CTYPE).138 *139 * Exceptions occurring in decoding take priority over the desired exception.140 *141 * Exported for '_ctypes' shared extensions.142 */143PyAPI_FUNC(void) _PyErr_SetLocaleString(144    PyObject *exception,145    const char *string);146 147PyAPI_FUNC(PyObject*) _PyErr_Format(148    PyThreadState *tstate,149    PyObject *exception,150    const char *format,151    ...);152 153PyAPI_FUNC(PyObject*) _PyErr_FormatV(154    PyThreadState *tstate,155    PyObject *exception,156    const char *format,157    va_list vargs);158 159extern void _PyErr_NormalizeException(160    PyThreadState *tstate,161    PyObject **exc,162    PyObject **val,163    PyObject **tb);164 165extern PyObject* _PyErr_FormatFromCauseTstate(166    PyThreadState *tstate,167    PyObject *exception,168    const char *format,169    ...);170 171extern PyObject* _PyExc_CreateExceptionGroup(172    const char *msg,173    PyObject *excs);174 175extern PyObject* _PyExc_PrepReraiseStar(176    PyObject *orig,177    PyObject *excs);178 179extern int _PyErr_CheckSignalsTstate(PyThreadState *tstate);180 181extern void _Py_DumpExtensionModules(int fd, PyInterpreterState *interp);182extern PyObject* _Py_CalculateSuggestions(PyObject *dir, PyObject *name);183extern PyObject* _Py_Offer_Suggestions(PyObject* exception);184 185// Export for '_testinternalcapi' shared extension186PyAPI_FUNC(Py_ssize_t) _Py_UTF8_Edit_Cost(PyObject *str_a, PyObject *str_b,187                                          Py_ssize_t max_cost);188 189// Export for '_json' shared extension190PyAPI_FUNC(void) _PyErr_FormatNote(const char *format, ...);191 192/* Context manipulation (PEP 3134) */193 194Py_DEPRECATED(3.12) extern void _PyErr_ChainExceptions(PyObject *, PyObject *, PyObject *);195 196// implementation detail for the codeop module.197// Exported for test.test_peg_generator.test_c_parser198PyAPI_DATA(PyTypeObject) _PyExc_IncompleteInputError;199#define PyExc_IncompleteInputError ((PyObject *)(&_PyExc_IncompleteInputError))200 201extern int _PyUnicodeError_GetParams(202    PyObject *self,203    PyObject **obj,204    Py_ssize_t *objlen,205    Py_ssize_t *start,206    Py_ssize_t *end,207    Py_ssize_t *slen,208    int as_bytes);209 210#ifdef __cplusplus211}212#endif213#endif /* !Py_INTERNAL_PYERRORS_H */214 
codekingpro/portable-devtools · Team Ai