Skip to main content

pyforge_ffi/cpython/
pyerrors.rs

1use crate::PyObject;
2use crate::Py_ssize_t;
3
4#[repr(C)]
5#[derive(Debug)]
6pub struct PyBaseExceptionObject {
7    pub ob_base: PyObject,
8    pub dict: *mut PyObject,
9    pub args: *mut PyObject,
10    #[cfg(Py_3_11)]
11    pub notes: *mut PyObject,
12    pub traceback: *mut PyObject,
13    pub context: *mut PyObject,
14    pub cause: *mut PyObject,
15    pub suppress_context: char,
16}
17
18#[repr(C)]
19#[derive(Debug)]
20pub struct PySyntaxErrorObject {
21    pub ob_base: PyObject,
22    pub dict: *mut PyObject,
23    pub args: *mut PyObject,
24    #[cfg(Py_3_11)]
25    pub notes: *mut PyObject,
26    pub traceback: *mut PyObject,
27    pub context: *mut PyObject,
28    pub cause: *mut PyObject,
29    pub suppress_context: char,
30
31    pub msg: *mut PyObject,
32    pub filename: *mut PyObject,
33    pub lineno: *mut PyObject,
34    pub offset: *mut PyObject,
35    #[cfg(Py_3_10)]
36    pub end_lineno: *mut PyObject,
37    #[cfg(Py_3_10)]
38    pub end_offset: *mut PyObject,
39    pub text: *mut PyObject,
40    pub print_file_and_line: *mut PyObject,
41    #[cfg(Py_3_14)]
42    pub metadata: *mut PyObject,
43}
44
45#[repr(C)]
46#[derive(Debug)]
47pub struct PyImportErrorObject {
48    pub ob_base: PyObject,
49    pub dict: *mut PyObject,
50    pub args: *mut PyObject,
51    #[cfg(Py_3_11)]
52    pub notes: *mut PyObject,
53    pub traceback: *mut PyObject,
54    pub context: *mut PyObject,
55    pub cause: *mut PyObject,
56    pub suppress_context: char,
57
58    pub msg: *mut PyObject,
59    pub name: *mut PyObject,
60    pub path: *mut PyObject,
61    #[cfg(Py_3_12)]
62    pub name_from: *mut PyObject,
63}
64
65#[repr(C)]
66#[derive(Debug)]
67pub struct PyUnicodeErrorObject {
68    pub ob_base: PyObject,
69    pub dict: *mut PyObject,
70    pub args: *mut PyObject,
71    #[cfg(Py_3_11)]
72    pub notes: *mut PyObject,
73    pub traceback: *mut PyObject,
74    pub context: *mut PyObject,
75    pub cause: *mut PyObject,
76    pub suppress_context: char,
77
78    pub encoding: *mut PyObject,
79    pub object: *mut PyObject,
80    pub start: Py_ssize_t,
81    pub end: Py_ssize_t,
82    pub reason: *mut PyObject,
83}
84
85#[repr(C)]
86#[derive(Debug)]
87pub struct PySystemExitObject {
88    pub ob_base: PyObject,
89    pub dict: *mut PyObject,
90    pub args: *mut PyObject,
91    #[cfg(Py_3_11)]
92    pub notes: *mut PyObject,
93    pub traceback: *mut PyObject,
94    pub context: *mut PyObject,
95    pub cause: *mut PyObject,
96    pub suppress_context: char,
97
98    pub code: *mut PyObject,
99}
100
101#[repr(C)]
102#[derive(Debug)]
103pub struct PyOSErrorObject {
104    pub ob_base: PyObject,
105    pub dict: *mut PyObject,
106    pub args: *mut PyObject,
107    #[cfg(Py_3_11)]
108    pub notes: *mut PyObject,
109    pub traceback: *mut PyObject,
110    pub context: *mut PyObject,
111    pub cause: *mut PyObject,
112    pub suppress_context: char,
113
114    pub myerrno: *mut PyObject,
115    pub strerror: *mut PyObject,
116    pub filename: *mut PyObject,
117    pub filename2: *mut PyObject,
118    #[cfg(windows)]
119    pub winerror: *mut PyObject,
120    pub written: Py_ssize_t,
121}
122
123#[repr(C)]
124#[derive(Debug)]
125pub struct PyStopIterationObject {
126    pub ob_base: PyObject,
127    pub dict: *mut PyObject,
128    pub args: *mut PyObject,
129    #[cfg(Py_3_11)]
130    pub notes: *mut PyObject,
131    pub traceback: *mut PyObject,
132    pub context: *mut PyObject,
133    pub cause: *mut PyObject,
134    pub suppress_context: char,
135
136    pub value: *mut PyObject,
137}
138
139// skipped _PyErr_ChainExceptions
140
141// skipped PyNameErrorObject
142// skipped PyAttributeErrorObject
143
144// skipped PyEnvironmentErrorObject
145// skipped PyWindowsErrorObject
146
147// skipped _PyErr_SetKeyError
148// skipped _PyErr_GetTopmostException
149// skipped _PyErr_GetExcInfo
150
151// skipped PyErr_SetFromErrnoWithUnicodeFilename
152
153// skipped _PyErr_FormatFromCause
154
155// skipped PyErr_SetFromWindowsErrWithUnicodeFilename
156// skipped PyErr_SetExcFromWindowsErrWithUnicodeFilename
157
158// skipped _PyErr_TrySetFromCause
159
160// skipped PySignal_SetWakeupFd
161// skipped _PyErr_CheckSignals
162
163// skipped PyErr_SyntaxLocationObject
164// skipped PyErr_RangedSyntaxLocationObject
165// skipped PyErr_ProgramTextObject
166
167// skipped _PyErr_ProgramDecodedTextObject
168// skipped _PyUnicodeTranslateError_Create
169// skipped _PyErr_WriteUnraisableMsg
170// skipped _Py_FatalErrorFunc
171// skipped _Py_FatalErrorFormat
172// skipped Py_FatalError