(buffer: &PyBuffer, vm: &VirtualMachine)
| 3454 | } |
| 3455 | |
| 3456 | fn buffer_to_ptr_len(buffer: &PyBuffer, vm: &VirtualMachine) -> PyResult<(*const c_void, i32)> { |
| 3457 | let bytes = buffer |
| 3458 | .as_contiguous() |
| 3459 | .ok_or_else(|| vm.new_buffer_error("underlying buffer is not C-contiguous"))?; |
| 3460 | let len = c_int::try_from(bytes.len()) |
| 3461 | .map_err(|_| vm.new_overflow_error("BLOB longer than INT_MAX bytes"))?; |
| 3462 | let ptr = bytes.as_ptr().cast(); |
| 3463 | Ok((ptr, len)) |
| 3464 | } |
| 3465 | |
| 3466 | fn exception_type_from_errcode(errcode: c_int, vm: &VirtualMachine) -> &'static Py<PyType> { |
| 3467 | match errcode { |
no test coverage detected