Trait pyo3::conversion::FromPyPointer
source · [−]pub unsafe trait FromPyPointer<'p>: Sized {
unsafe fn from_owned_ptr_or_opt(
py: Python<'p>,
ptr: *mut PyObject
) -> Option<&'p Self>;
unsafe fn from_borrowed_ptr_or_opt(
py: Python<'p>,
ptr: *mut PyObject
) -> Option<&'p Self>;
unsafe fn from_owned_ptr_or_panic(
py: Python<'p>,
ptr: *mut PyObject
) -> &'p Self { ... }
unsafe fn from_owned_ptr(py: Python<'p>, ptr: *mut PyObject) -> &'p Self { ... }
unsafe fn from_owned_ptr_or_err(
py: Python<'p>,
ptr: *mut PyObject
) -> PyResult<&'p Self> { ... }
unsafe fn from_borrowed_ptr_or_panic(
py: Python<'p>,
ptr: *mut PyObject
) -> &'p Self { ... }
unsafe fn from_borrowed_ptr(py: Python<'p>, ptr: *mut PyObject) -> &'p Self { ... }
unsafe fn from_borrowed_ptr_or_err(
py: Python<'p>,
ptr: *mut PyObject
) -> PyResult<&'p Self> { ... }
}
Expand description
Raw level conversion between *mut ffi::PyObject
and PyO3 types.
Safety
See safety notes on individual functions.
Required Methods
Convert from an arbitrary PyObject
.
Safety
Implementations must ensure the object does not get freed during 'p
and ensure that ptr
is of the correct type.
Note that it must be safe to decrement the reference count of ptr
.