Trait pyo3::class::basic::PyObjectProtocol [−][src]
pub trait PyObjectProtocol<'p>: PyClass { fn __getattr__(&'p self, name: Self::Name) -> Self::Result
where
Self: PyObjectGetAttrProtocol<'p>, { ... } fn __setattr__(
&'p mut self,
name: Self::Name,
value: Self::Value
) -> Self::Result
where
Self: PyObjectSetAttrProtocol<'p>, { ... } fn __delattr__(&'p mut self, name: Self::Name) -> Self::Result
where
Self: PyObjectDelAttrProtocol<'p>, { ... } fn __str__(&'p self) -> Self::Result
where
Self: PyObjectStrProtocol<'p>, { ... } fn __repr__(&'p self) -> Self::Result
where
Self: PyObjectReprProtocol<'p>, { ... } fn __format__(&'p self, format_spec: Self::Format) -> Self::Result
where
Self: PyObjectFormatProtocol<'p>, { ... } fn __hash__(&'p self) -> Self::Result
where
Self: PyObjectHashProtocol<'p>, { ... } fn __bytes__(&'p self) -> Self::Result
where
Self: PyObjectBytesProtocol<'p>, { ... } fn __richcmp__(&'p self, other: Self::Other, op: CompareOp) -> Self::Result
where
Self: PyObjectRichcmpProtocol<'p>, { ... } fn __bool__(&'p self) -> Self::Result
where
Self: PyObjectBoolProtocol<'p>, { ... } }
Expand description
Basic Python class customization
Provided methods
fn __getattr__(&'p self, name: Self::Name) -> Self::Result where
Self: PyObjectGetAttrProtocol<'p>,
fn __setattr__(
&'p mut self,
name: Self::Name,
value: Self::Value
) -> Self::Result where
Self: PyObjectSetAttrProtocol<'p>,
fn __delattr__(&'p mut self, name: Self::Name) -> Self::Result where
Self: PyObjectDelAttrProtocol<'p>,
fn __str__(&'p self) -> Self::Result where
Self: PyObjectStrProtocol<'p>,
fn __repr__(&'p self) -> Self::Result where
Self: PyObjectReprProtocol<'p>,
fn __format__(&'p self, format_spec: Self::Format) -> Self::Result where
Self: PyObjectFormatProtocol<'p>,
fn __format__(&'p self, format_spec: Self::Format) -> Self::Result where
Self: PyObjectFormatProtocol<'p>,
👎 Deprecated since 0.14.0:
prefer implementing __format__
in #[pymethods]
instead of in a protocol
fn __hash__(&'p self) -> Self::Result where
Self: PyObjectHashProtocol<'p>,
fn __bytes__(&'p self) -> Self::Result where
Self: PyObjectBytesProtocol<'p>,
fn __bytes__(&'p self) -> Self::Result where
Self: PyObjectBytesProtocol<'p>,
👎 Deprecated since 0.14.0:
prefer implementing __bytes__
in #[pymethods]
instead of in a protocol