pub trait PyMappingMethods<'py>: Sealed {
// Required methods
fn len(&self) -> PyResult<usize>;
fn is_empty(&self) -> PyResult<bool>;
fn contains<K>(&self, key: K) -> PyResult<bool>
where K: IntoPyObject<'py>;
fn get_item<K>(&self, key: K) -> PyResult<Bound<'py, PyAny>>
where K: IntoPyObject<'py>;
fn set_item<K, V>(&self, key: K, value: V) -> PyResult<()>
where K: IntoPyObject<'py>,
V: IntoPyObject<'py>;
fn del_item<K>(&self, key: K) -> PyResult<()>
where K: IntoPyObject<'py>;
fn keys(&self) -> PyResult<Bound<'py, PyList>>;
fn values(&self) -> PyResult<Bound<'py, PyList>>;
fn items(&self) -> PyResult<Bound<'py, PyList>>;
}Expand description
Implementation of functionality for PyMapping.
These methods are defined for the Bound<'py, PyMapping> 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 len(&self) -> PyResult<usize>
fn len(&self) -> PyResult<usize>
Returns the number of objects in the mapping.
This is equivalent to the Python expression len(self).
Sourcefn contains<K>(&self, key: K) -> PyResult<bool>where
K: IntoPyObject<'py>,
fn contains<K>(&self, key: K) -> PyResult<bool>where
K: IntoPyObject<'py>,
Determines if the mapping contains the specified key.
This is equivalent to the Python expression key in self.
Sourcefn get_item<K>(&self, key: K) -> PyResult<Bound<'py, PyAny>>where
K: IntoPyObject<'py>,
fn get_item<K>(&self, key: K) -> PyResult<Bound<'py, PyAny>>where
K: IntoPyObject<'py>,
Gets the item in self with key key.
Returns an Err if the item with specified key is not found, usually KeyError.
This is equivalent to the Python expression self[key].
Sourcefn set_item<K, V>(&self, key: K, value: V) -> PyResult<()>where
K: IntoPyObject<'py>,
V: IntoPyObject<'py>,
fn set_item<K, V>(&self, key: K, value: V) -> PyResult<()>where
K: IntoPyObject<'py>,
V: IntoPyObject<'py>,
Sets the item in self with key key.
This is equivalent to the Python expression self[key] = value.
Sourcefn del_item<K>(&self, key: K) -> PyResult<()>where
K: IntoPyObject<'py>,
fn del_item<K>(&self, key: K) -> PyResult<()>where
K: IntoPyObject<'py>,
Deletes the item with key key.
This is equivalent to the Python statement del self[key].
Sourcefn keys(&self) -> PyResult<Bound<'py, PyList>>
fn keys(&self) -> PyResult<Bound<'py, PyList>>
Returns a list containing all keys in the mapping.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".