1 | use crate::object::*; |
2 | use crate::pyport::Py_ssize_t; |
3 | use std::os::raw::{c_char, c_int}; |
4 | |
5 | extern "C" { |
6 | #[cfg_attr (PyPy, link_name = "PyPyErr_SetNone" )] |
7 | pub fn PyErr_SetNone(arg1: *mut PyObject); |
8 | #[cfg_attr (PyPy, link_name = "PyPyErr_SetObject" )] |
9 | pub fn PyErr_SetObject(arg1: *mut PyObject, arg2: *mut PyObject); |
10 | #[cfg_attr (PyPy, link_name = "PyPyErr_SetString" )] |
11 | pub fn PyErr_SetString(exception: *mut PyObject, string: *const c_char); |
12 | #[cfg_attr (PyPy, link_name = "PyPyErr_Occurred" )] |
13 | pub fn PyErr_Occurred() -> *mut PyObject; |
14 | #[cfg_attr (PyPy, link_name = "PyPyErr_Clear" )] |
15 | pub fn PyErr_Clear(); |
16 | #[cfg_attr (Py_3_12, deprecated(note = "Use PyErr_GetRaisedException() instead." ))] |
17 | #[cfg_attr (PyPy, link_name = "PyPyErr_Fetch" )] |
18 | pub fn PyErr_Fetch( |
19 | arg1: *mut *mut PyObject, |
20 | arg2: *mut *mut PyObject, |
21 | arg3: *mut *mut PyObject, |
22 | ); |
23 | #[cfg_attr (Py_3_12, deprecated(note = "Use PyErr_SetRaisedException() instead." ))] |
24 | #[cfg_attr (PyPy, link_name = "PyPyErr_Restore" )] |
25 | pub fn PyErr_Restore(arg1: *mut PyObject, arg2: *mut PyObject, arg3: *mut PyObject); |
26 | #[cfg_attr (PyPy, link_name = "PyPyErr_GetExcInfo" )] |
27 | pub fn PyErr_GetExcInfo( |
28 | arg1: *mut *mut PyObject, |
29 | arg2: *mut *mut PyObject, |
30 | arg3: *mut *mut PyObject, |
31 | ); |
32 | #[cfg_attr (PyPy, link_name = "PyPyErr_SetExcInfo" )] |
33 | pub fn PyErr_SetExcInfo(arg1: *mut PyObject, arg2: *mut PyObject, arg3: *mut PyObject); |
34 | #[cfg_attr (PyPy, link_name = "PyPy_FatalError" )] |
35 | pub fn Py_FatalError(message: *const c_char) -> !; |
36 | #[cfg_attr (PyPy, link_name = "PyPyErr_GivenExceptionMatches" )] |
37 | pub fn PyErr_GivenExceptionMatches(arg1: *mut PyObject, arg2: *mut PyObject) -> c_int; |
38 | #[cfg_attr (PyPy, link_name = "PyPyErr_ExceptionMatches" )] |
39 | pub fn PyErr_ExceptionMatches(arg1: *mut PyObject) -> c_int; |
40 | #[cfg_attr ( |
41 | Py_3_12, |
42 | deprecated( |
43 | note = "Use PyErr_GetRaisedException() instead, to avoid any possible de-normalization." |
44 | ) |
45 | )] |
46 | #[cfg_attr (PyPy, link_name = "PyPyErr_NormalizeException" )] |
47 | pub fn PyErr_NormalizeException( |
48 | arg1: *mut *mut PyObject, |
49 | arg2: *mut *mut PyObject, |
50 | arg3: *mut *mut PyObject, |
51 | ); |
52 | #[cfg (Py_3_12)] |
53 | pub fn PyErr_GetRaisedException() -> *mut PyObject; |
54 | #[cfg (Py_3_12)] |
55 | pub fn PyErr_SetRaisedException(exc: *mut PyObject); |
56 | #[cfg_attr (PyPy, link_name = "PyPyException_SetTraceback" )] |
57 | pub fn PyException_SetTraceback(arg1: *mut PyObject, arg2: *mut PyObject) -> c_int; |
58 | #[cfg_attr (PyPy, link_name = "PyPyException_GetTraceback" )] |
59 | pub fn PyException_GetTraceback(arg1: *mut PyObject) -> *mut PyObject; |
60 | #[cfg_attr (PyPy, link_name = "PyPyException_GetCause" )] |
61 | pub fn PyException_GetCause(arg1: *mut PyObject) -> *mut PyObject; |
62 | #[cfg_attr (PyPy, link_name = "PyPyException_SetCause" )] |
63 | pub fn PyException_SetCause(arg1: *mut PyObject, arg2: *mut PyObject); |
64 | #[cfg_attr (PyPy, link_name = "PyPyException_GetContext" )] |
65 | pub fn PyException_GetContext(arg1: *mut PyObject) -> *mut PyObject; |
66 | #[cfg_attr (PyPy, link_name = "PyPyException_SetContext" )] |
67 | pub fn PyException_SetContext(arg1: *mut PyObject, arg2: *mut PyObject); |
68 | |
69 | #[cfg (PyPy)] |
70 | #[link_name = "PyPyExceptionInstance_Class" ] |
71 | pub fn PyExceptionInstance_Class(x: *mut PyObject) -> *mut PyObject; |
72 | } |
73 | |
74 | #[inline ] |
75 | pub unsafe fn PyExceptionClass_Check(x: *mut PyObject) -> c_int { |
76 | (PyType_Check(op:x) != 0 |
77 | && PyType_FastSubclass(t:x as *mut PyTypeObject, Py_TPFLAGS_BASE_EXC_SUBCLASS) != 0) |
78 | as c_int |
79 | } |
80 | |
81 | #[inline ] |
82 | pub unsafe fn PyExceptionInstance_Check(x: *mut PyObject) -> c_int { |
83 | PyType_FastSubclass(t:Py_TYPE(x), Py_TPFLAGS_BASE_EXC_SUBCLASS) |
84 | } |
85 | |
86 | #[inline ] |
87 | #[cfg (not(PyPy))] |
88 | pub unsafe fn PyExceptionInstance_Class(x: *mut PyObject) -> *mut PyObject { |
89 | Py_TYPE(ob:x) as *mut PyObject |
90 | } |
91 | |
92 | // ported from cpython exception.c (line 2096) |
93 | #[cfg (PyPy)] |
94 | pub unsafe fn PyUnicodeDecodeError_Create( |
95 | encoding: *const c_char, |
96 | object: *const c_char, |
97 | length: Py_ssize_t, |
98 | start: Py_ssize_t, |
99 | end: Py_ssize_t, |
100 | reason: *const c_char, |
101 | ) -> *mut PyObject { |
102 | crate::_PyObject_CallFunction_SizeT( |
103 | PyExc_UnicodeDecodeError, |
104 | b"sy#nns \0" .as_ptr().cast::<c_char>(), |
105 | encoding, |
106 | object, |
107 | length, |
108 | start, |
109 | end, |
110 | reason, |
111 | ) |
112 | } |
113 | |
114 | #[cfg_attr (windows, link(name = "pythonXY" ))] |
115 | extern "C" { |
116 | #[cfg_attr (PyPy, link_name = "PyPyExc_BaseException" )] |
117 | pub static mut PyExc_BaseException: *mut PyObject; |
118 | #[cfg (Py_3_11)] |
119 | pub static mut PyExc_BaseExceptionGroup: *mut PyObject; |
120 | #[cfg_attr (PyPy, link_name = "PyPyExc_Exception" )] |
121 | pub static mut PyExc_Exception: *mut PyObject; |
122 | #[cfg_attr (PyPy, link_name = "PyPyExc_StopAsyncIteration" )] |
123 | pub static mut PyExc_StopAsyncIteration: *mut PyObject; |
124 | |
125 | #[cfg_attr (PyPy, link_name = "PyPyExc_StopIteration" )] |
126 | pub static mut PyExc_StopIteration: *mut PyObject; |
127 | #[cfg_attr (PyPy, link_name = "PyPyExc_GeneratorExit" )] |
128 | pub static mut PyExc_GeneratorExit: *mut PyObject; |
129 | #[cfg_attr (PyPy, link_name = "PyPyExc_ArithmeticError" )] |
130 | pub static mut PyExc_ArithmeticError: *mut PyObject; |
131 | #[cfg_attr (PyPy, link_name = "PyPyExc_LookupError" )] |
132 | pub static mut PyExc_LookupError: *mut PyObject; |
133 | |
134 | #[cfg_attr (PyPy, link_name = "PyPyExc_AssertionError" )] |
135 | pub static mut PyExc_AssertionError: *mut PyObject; |
136 | #[cfg_attr (PyPy, link_name = "PyPyExc_AttributeError" )] |
137 | pub static mut PyExc_AttributeError: *mut PyObject; |
138 | #[cfg_attr (PyPy, link_name = "PyPyExc_BufferError" )] |
139 | pub static mut PyExc_BufferError: *mut PyObject; |
140 | #[cfg_attr (PyPy, link_name = "PyPyExc_EOFError" )] |
141 | pub static mut PyExc_EOFError: *mut PyObject; |
142 | #[cfg_attr (PyPy, link_name = "PyPyExc_FloatingPointError" )] |
143 | pub static mut PyExc_FloatingPointError: *mut PyObject; |
144 | #[cfg_attr (PyPy, link_name = "PyPyExc_OSError" )] |
145 | pub static mut PyExc_OSError: *mut PyObject; |
146 | #[cfg_attr (PyPy, link_name = "PyPyExc_ImportError" )] |
147 | pub static mut PyExc_ImportError: *mut PyObject; |
148 | #[cfg_attr (PyPy, link_name = "PyPyExc_ModuleNotFoundError" )] |
149 | pub static mut PyExc_ModuleNotFoundError: *mut PyObject; |
150 | #[cfg_attr (PyPy, link_name = "PyPyExc_IndexError" )] |
151 | pub static mut PyExc_IndexError: *mut PyObject; |
152 | #[cfg_attr (PyPy, link_name = "PyPyExc_KeyError" )] |
153 | pub static mut PyExc_KeyError: *mut PyObject; |
154 | #[cfg_attr (PyPy, link_name = "PyPyExc_KeyboardInterrupt" )] |
155 | pub static mut PyExc_KeyboardInterrupt: *mut PyObject; |
156 | #[cfg_attr (PyPy, link_name = "PyPyExc_MemoryError" )] |
157 | pub static mut PyExc_MemoryError: *mut PyObject; |
158 | #[cfg_attr (PyPy, link_name = "PyPyExc_NameError" )] |
159 | pub static mut PyExc_NameError: *mut PyObject; |
160 | #[cfg_attr (PyPy, link_name = "PyPyExc_OverflowError" )] |
161 | pub static mut PyExc_OverflowError: *mut PyObject; |
162 | #[cfg_attr (PyPy, link_name = "PyPyExc_RuntimeError" )] |
163 | pub static mut PyExc_RuntimeError: *mut PyObject; |
164 | #[cfg_attr (PyPy, link_name = "PyPyExc_RecursionError" )] |
165 | pub static mut PyExc_RecursionError: *mut PyObject; |
166 | #[cfg_attr (PyPy, link_name = "PyPyExc_NotImplementedError" )] |
167 | pub static mut PyExc_NotImplementedError: *mut PyObject; |
168 | #[cfg_attr (PyPy, link_name = "PyPyExc_SyntaxError" )] |
169 | pub static mut PyExc_SyntaxError: *mut PyObject; |
170 | #[cfg_attr (PyPy, link_name = "PyPyExc_IndentationError" )] |
171 | pub static mut PyExc_IndentationError: *mut PyObject; |
172 | #[cfg_attr (PyPy, link_name = "PyPyExc_TabError" )] |
173 | pub static mut PyExc_TabError: *mut PyObject; |
174 | #[cfg_attr (PyPy, link_name = "PyPyExc_ReferenceError" )] |
175 | pub static mut PyExc_ReferenceError: *mut PyObject; |
176 | #[cfg_attr (PyPy, link_name = "PyPyExc_SystemError" )] |
177 | pub static mut PyExc_SystemError: *mut PyObject; |
178 | #[cfg_attr (PyPy, link_name = "PyPyExc_SystemExit" )] |
179 | pub static mut PyExc_SystemExit: *mut PyObject; |
180 | #[cfg_attr (PyPy, link_name = "PyPyExc_TypeError" )] |
181 | pub static mut PyExc_TypeError: *mut PyObject; |
182 | #[cfg_attr (PyPy, link_name = "PyPyExc_UnboundLocalError" )] |
183 | pub static mut PyExc_UnboundLocalError: *mut PyObject; |
184 | #[cfg_attr (PyPy, link_name = "PyPyExc_UnicodeError" )] |
185 | pub static mut PyExc_UnicodeError: *mut PyObject; |
186 | #[cfg_attr (PyPy, link_name = "PyPyExc_UnicodeEncodeError" )] |
187 | pub static mut PyExc_UnicodeEncodeError: *mut PyObject; |
188 | #[cfg_attr (PyPy, link_name = "PyPyExc_UnicodeDecodeError" )] |
189 | pub static mut PyExc_UnicodeDecodeError: *mut PyObject; |
190 | #[cfg_attr (PyPy, link_name = "PyPyExc_UnicodeTranslateError" )] |
191 | pub static mut PyExc_UnicodeTranslateError: *mut PyObject; |
192 | #[cfg_attr (PyPy, link_name = "PyPyExc_ValueError" )] |
193 | pub static mut PyExc_ValueError: *mut PyObject; |
194 | #[cfg_attr (PyPy, link_name = "PyPyExc_ZeroDivisionError" )] |
195 | pub static mut PyExc_ZeroDivisionError: *mut PyObject; |
196 | |
197 | #[cfg_attr (PyPy, link_name = "PyPyExc_BlockingIOError" )] |
198 | pub static mut PyExc_BlockingIOError: *mut PyObject; |
199 | #[cfg_attr (PyPy, link_name = "PyPyExc_BrokenPipeError" )] |
200 | pub static mut PyExc_BrokenPipeError: *mut PyObject; |
201 | #[cfg_attr (PyPy, link_name = "PyPyExc_ChildProcessError" )] |
202 | pub static mut PyExc_ChildProcessError: *mut PyObject; |
203 | #[cfg_attr (PyPy, link_name = "PyPyExc_ConnectionError" )] |
204 | pub static mut PyExc_ConnectionError: *mut PyObject; |
205 | #[cfg_attr (PyPy, link_name = "PyPyExc_ConnectionAbortedError" )] |
206 | pub static mut PyExc_ConnectionAbortedError: *mut PyObject; |
207 | #[cfg_attr (PyPy, link_name = "PyPyExc_ConnectionRefusedError" )] |
208 | pub static mut PyExc_ConnectionRefusedError: *mut PyObject; |
209 | #[cfg_attr (PyPy, link_name = "PyPyExc_ConnectionResetError" )] |
210 | pub static mut PyExc_ConnectionResetError: *mut PyObject; |
211 | #[cfg_attr (PyPy, link_name = "PyPyExc_FileExistsError" )] |
212 | pub static mut PyExc_FileExistsError: *mut PyObject; |
213 | #[cfg_attr (PyPy, link_name = "PyPyExc_FileNotFoundError" )] |
214 | pub static mut PyExc_FileNotFoundError: *mut PyObject; |
215 | #[cfg_attr (PyPy, link_name = "PyPyExc_InterruptedError" )] |
216 | pub static mut PyExc_InterruptedError: *mut PyObject; |
217 | #[cfg_attr (PyPy, link_name = "PyPyExc_IsADirectoryError" )] |
218 | pub static mut PyExc_IsADirectoryError: *mut PyObject; |
219 | #[cfg_attr (PyPy, link_name = "PyPyExc_NotADirectoryError" )] |
220 | pub static mut PyExc_NotADirectoryError: *mut PyObject; |
221 | #[cfg_attr (PyPy, link_name = "PyPyExc_PermissionError" )] |
222 | pub static mut PyExc_PermissionError: *mut PyObject; |
223 | #[cfg_attr (PyPy, link_name = "PyPyExc_ProcessLookupError" )] |
224 | pub static mut PyExc_ProcessLookupError: *mut PyObject; |
225 | #[cfg_attr (PyPy, link_name = "PyPyExc_TimeoutError" )] |
226 | pub static mut PyExc_TimeoutError: *mut PyObject; |
227 | |
228 | #[cfg_attr (PyPy, link_name = "PyPyExc_OSError" )] |
229 | pub static mut PyExc_EnvironmentError: *mut PyObject; |
230 | #[cfg_attr (PyPy, link_name = "PyPyExc_OSError" )] |
231 | pub static mut PyExc_IOError: *mut PyObject; |
232 | #[cfg (windows)] |
233 | #[cfg_attr (PyPy, link_name = "PyPyExc_OSError" )] |
234 | pub static mut PyExc_WindowsError: *mut PyObject; |
235 | |
236 | pub static mut PyExc_RecursionErrorInst: *mut PyObject; |
237 | |
238 | /* Predefined warning categories */ |
239 | #[cfg_attr (PyPy, link_name = "PyPyExc_Warning" )] |
240 | pub static mut PyExc_Warning: *mut PyObject; |
241 | #[cfg_attr (PyPy, link_name = "PyPyExc_UserWarning" )] |
242 | pub static mut PyExc_UserWarning: *mut PyObject; |
243 | #[cfg_attr (PyPy, link_name = "PyPyExc_DeprecationWarning" )] |
244 | pub static mut PyExc_DeprecationWarning: *mut PyObject; |
245 | #[cfg_attr (PyPy, link_name = "PyPyExc_PendingDeprecationWarning" )] |
246 | pub static mut PyExc_PendingDeprecationWarning: *mut PyObject; |
247 | #[cfg_attr (PyPy, link_name = "PyPyExc_SyntaxWarning" )] |
248 | pub static mut PyExc_SyntaxWarning: *mut PyObject; |
249 | #[cfg_attr (PyPy, link_name = "PyPyExc_RuntimeWarning" )] |
250 | pub static mut PyExc_RuntimeWarning: *mut PyObject; |
251 | #[cfg_attr (PyPy, link_name = "PyPyExc_FutureWarning" )] |
252 | pub static mut PyExc_FutureWarning: *mut PyObject; |
253 | #[cfg_attr (PyPy, link_name = "PyPyExc_ImportWarning" )] |
254 | pub static mut PyExc_ImportWarning: *mut PyObject; |
255 | #[cfg_attr (PyPy, link_name = "PyPyExc_UnicodeWarning" )] |
256 | pub static mut PyExc_UnicodeWarning: *mut PyObject; |
257 | #[cfg_attr (PyPy, link_name = "PyPyExc_BytesWarning" )] |
258 | pub static mut PyExc_BytesWarning: *mut PyObject; |
259 | #[cfg_attr (PyPy, link_name = "PyPyExc_ResourceWarning" )] |
260 | pub static mut PyExc_ResourceWarning: *mut PyObject; |
261 | #[cfg (Py_3_10)] |
262 | #[cfg_attr (PyPy, link_name = "PyPyExc_EncodingWarning" )] |
263 | pub static mut PyExc_EncodingWarning: *mut PyObject; |
264 | } |
265 | |
266 | extern "C" { |
267 | #[cfg_attr (PyPy, link_name = "PyPyErr_BadArgument" )] |
268 | pub fn PyErr_BadArgument() -> c_int; |
269 | #[cfg_attr (PyPy, link_name = "PyPyErr_NoMemory" )] |
270 | pub fn PyErr_NoMemory() -> *mut PyObject; |
271 | #[cfg_attr (PyPy, link_name = "PyPyErr_SetFromErrno" )] |
272 | pub fn PyErr_SetFromErrno(arg1: *mut PyObject) -> *mut PyObject; |
273 | #[cfg_attr (PyPy, link_name = "PyPyErr_SetFromErrnoWithFilenameObject" )] |
274 | pub fn PyErr_SetFromErrnoWithFilenameObject( |
275 | arg1: *mut PyObject, |
276 | arg2: *mut PyObject, |
277 | ) -> *mut PyObject; |
278 | pub fn PyErr_SetFromErrnoWithFilenameObjects( |
279 | arg1: *mut PyObject, |
280 | arg2: *mut PyObject, |
281 | arg3: *mut PyObject, |
282 | ) -> *mut PyObject; |
283 | pub fn PyErr_SetFromErrnoWithFilename( |
284 | exc: *mut PyObject, |
285 | filename: *const c_char, |
286 | ) -> *mut PyObject; |
287 | #[cfg_attr (PyPy, link_name = "PyPyErr_Format" )] |
288 | pub fn PyErr_Format(exception: *mut PyObject, format: *const c_char, ...) -> *mut PyObject; |
289 | pub fn PyErr_SetImportErrorSubclass( |
290 | arg1: *mut PyObject, |
291 | arg2: *mut PyObject, |
292 | arg3: *mut PyObject, |
293 | arg4: *mut PyObject, |
294 | ) -> *mut PyObject; |
295 | pub fn PyErr_SetImportError( |
296 | arg1: *mut PyObject, |
297 | arg2: *mut PyObject, |
298 | arg3: *mut PyObject, |
299 | ) -> *mut PyObject; |
300 | #[cfg_attr (PyPy, link_name = "PyPyErr_BadInternalCall" )] |
301 | pub fn PyErr_BadInternalCall(); |
302 | pub fn _PyErr_BadInternalCall(filename: *const c_char, lineno: c_int); |
303 | #[cfg_attr (PyPy, link_name = "PyPyErr_NewException" )] |
304 | pub fn PyErr_NewException( |
305 | name: *const c_char, |
306 | base: *mut PyObject, |
307 | dict: *mut PyObject, |
308 | ) -> *mut PyObject; |
309 | #[cfg_attr (PyPy, link_name = "PyPyErr_NewExceptionWithDoc" )] |
310 | pub fn PyErr_NewExceptionWithDoc( |
311 | name: *const c_char, |
312 | doc: *const c_char, |
313 | base: *mut PyObject, |
314 | dict: *mut PyObject, |
315 | ) -> *mut PyObject; |
316 | #[cfg_attr (PyPy, link_name = "PyPyErr_WriteUnraisable" )] |
317 | pub fn PyErr_WriteUnraisable(arg1: *mut PyObject); |
318 | #[cfg_attr (PyPy, link_name = "PyPyErr_CheckSignals" )] |
319 | pub fn PyErr_CheckSignals() -> c_int; |
320 | #[cfg_attr (PyPy, link_name = "PyPyErr_SetInterrupt" )] |
321 | pub fn PyErr_SetInterrupt(); |
322 | #[cfg (Py_3_10)] |
323 | #[cfg_attr (PyPy, link_name = "PyPyErr_SetInterruptEx" )] |
324 | pub fn PyErr_SetInterruptEx(signum: c_int); |
325 | #[cfg_attr (PyPy, link_name = "PyPyErr_SyntaxLocation" )] |
326 | pub fn PyErr_SyntaxLocation(filename: *const c_char, lineno: c_int); |
327 | #[cfg_attr (PyPy, link_name = "PyPyErr_SyntaxLocationEx" )] |
328 | pub fn PyErr_SyntaxLocationEx(filename: *const c_char, lineno: c_int, col_offset: c_int); |
329 | #[cfg_attr (PyPy, link_name = "PyPyErr_ProgramText" )] |
330 | pub fn PyErr_ProgramText(filename: *const c_char, lineno: c_int) -> *mut PyObject; |
331 | #[cfg (not(PyPy))] |
332 | pub fn PyUnicodeDecodeError_Create( |
333 | encoding: *const c_char, |
334 | object: *const c_char, |
335 | length: Py_ssize_t, |
336 | start: Py_ssize_t, |
337 | end: Py_ssize_t, |
338 | reason: *const c_char, |
339 | ) -> *mut PyObject; |
340 | pub fn PyUnicodeEncodeError_GetEncoding(arg1: *mut PyObject) -> *mut PyObject; |
341 | pub fn PyUnicodeDecodeError_GetEncoding(arg1: *mut PyObject) -> *mut PyObject; |
342 | pub fn PyUnicodeEncodeError_GetObject(arg1: *mut PyObject) -> *mut PyObject; |
343 | pub fn PyUnicodeDecodeError_GetObject(arg1: *mut PyObject) -> *mut PyObject; |
344 | pub fn PyUnicodeTranslateError_GetObject(arg1: *mut PyObject) -> *mut PyObject; |
345 | pub fn PyUnicodeEncodeError_GetStart(arg1: *mut PyObject, arg2: *mut Py_ssize_t) -> c_int; |
346 | pub fn PyUnicodeDecodeError_GetStart(arg1: *mut PyObject, arg2: *mut Py_ssize_t) -> c_int; |
347 | pub fn PyUnicodeTranslateError_GetStart(arg1: *mut PyObject, arg2: *mut Py_ssize_t) -> c_int; |
348 | pub fn PyUnicodeEncodeError_SetStart(arg1: *mut PyObject, arg2: Py_ssize_t) -> c_int; |
349 | pub fn PyUnicodeDecodeError_SetStart(arg1: *mut PyObject, arg2: Py_ssize_t) -> c_int; |
350 | pub fn PyUnicodeTranslateError_SetStart(arg1: *mut PyObject, arg2: Py_ssize_t) -> c_int; |
351 | pub fn PyUnicodeEncodeError_GetEnd(arg1: *mut PyObject, arg2: *mut Py_ssize_t) -> c_int; |
352 | pub fn PyUnicodeDecodeError_GetEnd(arg1: *mut PyObject, arg2: *mut Py_ssize_t) -> c_int; |
353 | pub fn PyUnicodeTranslateError_GetEnd(arg1: *mut PyObject, arg2: *mut Py_ssize_t) -> c_int; |
354 | pub fn PyUnicodeEncodeError_SetEnd(arg1: *mut PyObject, arg2: Py_ssize_t) -> c_int; |
355 | pub fn PyUnicodeDecodeError_SetEnd(arg1: *mut PyObject, arg2: Py_ssize_t) -> c_int; |
356 | pub fn PyUnicodeTranslateError_SetEnd(arg1: *mut PyObject, arg2: Py_ssize_t) -> c_int; |
357 | pub fn PyUnicodeEncodeError_GetReason(arg1: *mut PyObject) -> *mut PyObject; |
358 | pub fn PyUnicodeDecodeError_GetReason(arg1: *mut PyObject) -> *mut PyObject; |
359 | pub fn PyUnicodeTranslateError_GetReason(arg1: *mut PyObject) -> *mut PyObject; |
360 | pub fn PyUnicodeEncodeError_SetReason(exc: *mut PyObject, reason: *const c_char) -> c_int; |
361 | pub fn PyUnicodeDecodeError_SetReason(exc: *mut PyObject, reason: *const c_char) -> c_int; |
362 | pub fn PyUnicodeTranslateError_SetReason(exc: *mut PyObject, reason: *const c_char) -> c_int; |
363 | } |
364 | |