[][src]Struct pyo3::types::PyAny

#[repr(transparent)]
pub struct PyAny(_, _);

Represents a python's Any type. We can convert all python objects as PyAny.

In addition, if the inner object is an instance of type T, we can downcast PyAny into T.

Example

use pyo3::prelude::*;
use pyo3::types::{PyAny, PyDict, PyList};
let gil = Python::acquire_gil();
let dict = PyDict::new(gil.python());
assert!(gil.python().is_instance::<PyAny, _>(dict).unwrap());
let any = dict.as_ref();
assert!(any.downcast_ref::<PyDict>().is_ok());
assert!(any.downcast_ref::<PyList>().is_err());

Methods

impl PyAny[src]

pub fn downcast_ref<T>(&self) -> Result<&T, PyDowncastError> where
    T: for<'gil> PyTryFrom<'gil>, 
[src]

pub fn downcast_mut<T>(&self) -> Result<&mut T, PyDowncastError> where
    T: for<'gil> PyTryFrom<'gil>, 
[src]

Trait Implementations

impl AsPyPointer for PyAny[src]

fn as_ptr(&self) -> *mut PyObject[src]

Gets the underlying FFI pointer, returns a borrowed pointer.

impl AsPyRef<PyAny> for PyObject[src]

impl AsRef<PyAny> for PyAny[src]

impl AsRef<PyAny> for PyBool[src]

impl AsRef<PyAny> for PyDict[src]

impl AsRef<PyAny> for PyFloat[src]

impl AsRef<PyAny> for PyList[src]

impl AsRef<PyAny> for PyModule[src]

impl AsRef<PyAny> for PyLong[src]

impl AsRef<PyAny> for PySequence[src]

impl AsRef<PyAny> for PySet[src]

impl AsRef<PyAny> for PyFrozenSet[src]

impl AsRef<PyAny> for PySlice[src]

impl AsRef<PyAny> for PyString[src]

impl AsRef<PyAny> for PyByteArray[src]

impl AsRef<PyAny> for PyTuple[src]

impl AsRef<PyAny> for PyType[src]

impl AsRef<PyAny> for PyBytes[src]

impl AsRef<PyAny> for PyComplex[src]

impl AsRef<PyAny> for PyDate[src]

impl AsRef<PyAny> for PyDateTime[src]

impl AsRef<PyAny> for PyTime[src]

impl AsRef<PyAny> for PyTzInfo[src]

impl AsRef<PyAny> for PyDelta[src]

impl Debug for PyAny[src]

impl Display for PyAny[src]

impl<'a> From<&'a PyBool> for &'a PyAny[src]

impl<'a> From<&'a PyByteArray> for &'a PyAny[src]

impl<'a> From<&'a PyBytes> for &'a PyAny[src]

impl<'a> From<&'a PyComplex> for &'a PyAny[src]

impl<'a> From<&'a PyDate> for &'a PyAny[src]

impl<'a> From<&'a PyDateTime> for &'a PyAny[src]

impl<'a> From<&'a PyDelta> for &'a PyAny[src]

impl<'a> From<&'a PyDict> for &'a PyAny[src]

impl<'a> From<&'a PyFloat> for &'a PyAny[src]

impl<'a> From<&'a PyFrozenSet> for &'a PyAny[src]

impl<'a> From<&'a PyList> for &'a PyAny[src]

impl<'a> From<&'a PyLong> for &'a PyAny[src]

impl<'a> From<&'a PyModule> for &'a PyAny[src]

impl<'a> From<&'a PySet> for &'a PyAny[src]

impl<'a> From<&'a PySlice> for &'a PyAny[src]

impl<'a> From<&'a PyString> for &'a PyAny[src]

impl<'a> From<&'a PyTime> for &'a PyAny[src]

impl<'a> From<&'a PyTuple> for &'a PyAny[src]

impl<'a> From<&'a PyType> for &'a PyAny[src]

impl<'a> From<&'a PyTzInfo> for &'a PyAny[src]

impl<'a, T> From<PyRef<'a, T>> for &'a PyAny where
    T: PyTypeInfo
[src]

impl<'a, T> From<PyRefMut<'a, T>> for &'a PyAny where
    T: PyTypeInfo
[src]

impl PartialEq<PyAny> for PyAny[src]

impl PyNativeType for PyAny[src]

impl PyObjectAlloc for PyAny[src]

impl<U> PyTryInto<U> for PyAny where
    U: for<'v> PyTryFrom<'v>, 
[src]

impl PyTypeInfo for PyAny[src]

type Type = ()

Type of objects to store in PyObject struct

type BaseType = PyAny

Base class

impl PyTypeObject for PyAny[src]

impl ToPyObject for PyAny[src]

Auto Trait Implementations

impl !RefUnwindSafe for PyAny

impl !Send for PyAny

impl !Sync for PyAny

impl Unpin for PyAny

impl UnwindSafe for PyAny

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> PyObjectAlloc for T where
    T: PyObjectWithFreeList
[src]

impl<T> PyTypeCreate for T where
    T: PyObjectAlloc + PyTypeObject
[src]

impl<T> PyTypeObject for T where
    T: PyTypeInfo + PyMethodsProtocol + PyObjectAlloc
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = !

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.