Trait pyo3::types::PyTypeMethods
source · pub trait PyTypeMethods<'py>: Sealed {
// Required methods
fn as_type_ptr(&self) -> *mut PyTypeObject;
fn name(&self) -> PyResult<Bound<'py, PyString>>;
fn qualname(&self) -> PyResult<Bound<'py, PyString>>;
fn module(&self) -> PyResult<Bound<'py, PyString>>;
fn fully_qualified_name(&self) -> PyResult<Bound<'py, PyString>>;
fn is_subclass(&self, other: &Bound<'_, PyAny>) -> PyResult<bool>;
fn is_subclass_of<T>(&self) -> PyResult<bool>
where T: PyTypeInfo;
fn mro(&self) -> Bound<'py, PyTuple>;
fn bases(&self) -> Bound<'py, PyTuple>;
}
Expand description
Implementation of functionality for PyType
.
These methods are defined for the Bound<'py, PyType>
smart pointer, so to use method call
syntax these methods are separated into a trait, because stable Rust does not yet support
arbitrary_self_types
.
Required Methods§
sourcefn as_type_ptr(&self) -> *mut PyTypeObject
fn as_type_ptr(&self) -> *mut PyTypeObject
Retrieves the underlying FFI pointer associated with this Python object.
sourcefn name(&self) -> PyResult<Bound<'py, PyString>>
fn name(&self) -> PyResult<Bound<'py, PyString>>
Gets the name of the PyType
. Equivalent to self.__name__
in Python.
sourcefn qualname(&self) -> PyResult<Bound<'py, PyString>>
fn qualname(&self) -> PyResult<Bound<'py, PyString>>
Gets the qualified name of the PyType
.
Equivalent to self.__qualname__
in Python.
sourcefn module(&self) -> PyResult<Bound<'py, PyString>>
fn module(&self) -> PyResult<Bound<'py, PyString>>
Gets the name of the module defining the PyType
.
sourcefn fully_qualified_name(&self) -> PyResult<Bound<'py, PyString>>
fn fully_qualified_name(&self) -> PyResult<Bound<'py, PyString>>
Gets the fully qualified name of the PyType
.
sourcefn is_subclass(&self, other: &Bound<'_, PyAny>) -> PyResult<bool>
fn is_subclass(&self, other: &Bound<'_, PyAny>) -> PyResult<bool>
Checks whether self
is a subclass of other
.
Equivalent to the Python expression issubclass(self, other)
.
sourcefn is_subclass_of<T>(&self) -> PyResult<bool>where
T: PyTypeInfo,
fn is_subclass_of<T>(&self) -> PyResult<bool>where
T: PyTypeInfo,
Checks whether self
is a subclass of type T
.
Equivalent to the Python expression issubclass(self, T)
, if the type
T
is known at compile time.