[−][src]Struct pyo3::types::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]
T: for<'gil> PyTryFrom<'gil>,
pub fn downcast_mut<T>(&self) -> Result<&mut T, PyDowncastError> where
T: for<'gil> PyTryFrom<'gil>,
[src]
T: for<'gil> PyTryFrom<'gil>,
Trait Implementations
impl AsPyPointer for PyAny
[src]
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]
fn from(ob: &'a PyByteArray) -> Self
[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]
fn from(ob: &'a PyDateTime) -> Self
[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]
fn from(ob: &'a PyFrozenSet) -> Self
[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 PartialEq<PyAny> for PyAny
[src]
impl PyNativeType for PyAny
[src]
impl PyObjectLayout<PyAny> for PyObject
[src]
const IS_NATIVE_TYPE: bool
[src]
fn get_super_or(
&mut self
) -> Option<&mut <T::BaseType as PyTypeInfo>::ConcreteLayout>
[src]
&mut self
) -> Option<&mut <T::BaseType as PyTypeInfo>::ConcreteLayout>
unsafe fn internal_ref_cast(obj: &PyAny) -> &T
[src]
unsafe fn internal_mut_cast(obj: &PyAny) -> &mut T
[src]
unsafe fn py_init(&mut self, _value: T)
[src]
unsafe fn py_drop(&mut self, _py: Python)
[src]
impl PyObjectSizedLayout<PyAny> for PyObject
[src]
impl<U> PyTryInto<U> for PyAny where
U: for<'v> PyTryFrom<'v>,
[src]
U: for<'v> PyTryFrom<'v>,
fn try_into(&self) -> Result<&U, PyDowncastError>
[src]
fn try_into_exact(&self) -> Result<&U, PyDowncastError>
[src]
fn try_into_mut(&self) -> Result<&mut U, PyDowncastError>
[src]
fn try_into_mut_exact(&self) -> Result<&mut U, PyDowncastError>
[src]
impl PyTypeInfo for PyAny
[src]
type Type = ()
Type of objects to store in PyObject struct
type BaseType = PyAny
Base class
type ConcreteLayout = PyObject
Layout
type Initializer = PyNativeTypeInitializer<Self>
Initializer for layout
const NAME: &'static str
[src]
const MODULE: Option<&'static str>
[src]
unsafe fn type_object() -> &'static mut PyTypeObject
[src]
fn is_instance(ptr: &PyAny) -> bool
[src]
const DESCRIPTION: &'static str
[src]
const FLAGS: usize
[src]
fn is_exact_instance(object: &PyAny) -> bool
[src]
impl PyTypeObject for PyAny
[src]
fn init_type() -> NonNull<PyTypeObject>
[src]
fn type_object() -> Py<PyType>
[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]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> PyTypeObject for T where
T: PyClass,
[src]
T: PyClass,
fn init_type() -> NonNull<PyTypeObject>
[src]
fn type_object() -> Py<PyType>
[src]
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,