Trait cpython::ToPyObject [] [src]

pub trait ToPyObject {
    type ObjectType: PythonObject;
    fn to_py_object(&self, py: Python) -> Self::ObjectType;

    fn into_py_object(self, py: Python) -> Self::ObjectType
    where
        Self: Sized
, { ... }
fn with_borrowed_ptr<F, R>(&self, py: Python, f: F) -> R
    where
        F: FnOnce(*mut PyObject) -> R
, { ... } }

Conversion trait that allows various objects to be converted into Python objects.

Associated Types

Required Methods

Converts self into a Python object.

Provided Methods

Converts self into a Python object.

May be more efficient than to_py_object in some cases because it can move out of the input object.

Converts self into a Python object and calls the specified closure on the native FFI pointer underlying the Python object.

May be more efficient than to_py_object because it does not need to touch any reference counts when the input object already is a Python object.

Implementations on Foreign Types

impl<'a, T: ?Sized> ToPyObject for &'a T where
    T: ToPyObject
[src]

[src]

[src]

[src]

impl<T> ToPyObject for Option<T> where
    T: ToPyObject
[src]

Option::Some<T> is converted like T. Option::None is converted to Python None.

[src]

[src]

[src]

impl ToPyObject for str
[src]

Converts Rust str to Python object. See PyString::new for details on the conversion.

[src]

[src]

[src]

impl<'a> ToPyObject for Cow<'a, str>
[src]

Converts Rust Cow<str> to Python object. See PyString::new for details on the conversion.

[src]

[src]

[src]

impl ToPyObject for String
[src]

Converts Rust String to Python object. See PyString::new for details on the conversion.

[src]

[src]

[src]

impl<K, V, H> ToPyObject for HashMap<K, V, H> where
    K: Hash + Eq + ToPyObject,
    V: ToPyObject,
    H: BuildHasher
[src]

[src]

[src]

[src]

impl<K, V> ToPyObject for BTreeMap<K, V> where
    K: Eq + ToPyObject,
    V: ToPyObject
[src]

[src]

[src]

[src]

impl ToPyObject for bool
[src]

Converts a rust bool to a Python bool.

[src]

[src]

[src]

impl<A: ToPyObject> ToPyObject for (A,)
[src]

[src]

[src]

[src]

impl<A: ToPyObject, B: ToPyObject> ToPyObject for (A, B)
[src]

[src]

[src]

[src]

impl<A: ToPyObject, B: ToPyObject, C: ToPyObject> ToPyObject for (A, B, C)
[src]

[src]

[src]

[src]

impl<A: ToPyObject, B: ToPyObject, C: ToPyObject, D: ToPyObject> ToPyObject for (A, B, C, D)
[src]

[src]

[src]

[src]

impl<A: ToPyObject, B: ToPyObject, C: ToPyObject, D: ToPyObject, E: ToPyObject> ToPyObject for (A, B, C, D, E)
[src]

[src]

[src]

[src]

impl<A: ToPyObject, B: ToPyObject, C: ToPyObject, D: ToPyObject, E: ToPyObject, F: ToPyObject> ToPyObject for (A, B, C, D, E, F)
[src]

[src]

[src]

[src]

impl<A: ToPyObject, B: ToPyObject, C: ToPyObject, D: ToPyObject, E: ToPyObject, F: ToPyObject, G: ToPyObject> ToPyObject for (A, B, C, D, E, F, G)
[src]

[src]

[src]

[src]

impl<A: ToPyObject, B: ToPyObject, C: ToPyObject, D: ToPyObject, E: ToPyObject, F: ToPyObject, G: ToPyObject, H: ToPyObject> ToPyObject for (A, B, C, D, E, F, G, H)
[src]

[src]

[src]

[src]

impl<A: ToPyObject, B: ToPyObject, C: ToPyObject, D: ToPyObject, E: ToPyObject, F: ToPyObject, G: ToPyObject, H: ToPyObject, I: ToPyObject> ToPyObject for (A, B, C, D, E, F, G, H, I)
[src]

[src]

[src]

[src]

impl<T> ToPyObject for [T] where
    T: ToPyObject
[src]

[src]

[src]

[src]

impl<T> ToPyObject for Vec<T> where
    T: ToPyObject
[src]

[src]

[src]

[src]

impl ToPyObject for i8
[src]

[src]

[src]

[src]

impl ToPyObject for u8
[src]

[src]

[src]

[src]

impl ToPyObject for i16
[src]

[src]

[src]

[src]

impl ToPyObject for u16
[src]

[src]

[src]

[src]

impl ToPyObject for i32
[src]

[src]

[src]

[src]

impl ToPyObject for u32
[src]

[src]

[src]

[src]

impl<'p> ToPyObject for i64
[src]

[src]

[src]

[src]

impl ToPyObject for isize
[src]

[src]

[src]

[src]

impl ToPyObject for usize
[src]

[src]

[src]

[src]

impl<'p> ToPyObject for u64
[src]

[src]

[src]

[src]

impl ToPyObject for f64
[src]

[src]

[src]

[src]

impl ToPyObject for f32
[src]

[src]

[src]

[src]

Implementors