Trait pyo3::conversion::FromPyPointer[][src]

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.

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.

Convert from an arbitrary borrowed PyObject.

Safety

Implementations must ensure the object does not get freed during 'p and avoid type confusion.

Provided methods

Convert from an arbitrary PyObject or panic.

Safety

Relies on from_owned_ptr_or_opt.

Convert from an arbitrary PyObject or panic.

Safety

Relies on from_owned_ptr_or_opt.

Convert from an arbitrary PyObject.

Safety

Relies on from_owned_ptr_or_opt.

Convert from an arbitrary borrowed PyObject.

Safety

Relies on unsafe fn from_borrowed_ptr_or_opt.

Convert from an arbitrary borrowed PyObject.

Safety

Relies on unsafe fn from_borrowed_ptr_or_opt.

Convert from an arbitrary borrowed PyObject.

Safety

Relies on unsafe fn from_borrowed_ptr_or_opt.

Implementors