pub struct MapStorageMapper<SA, K, V>
where SA: StorageReadApi + StorageWriteApi + ErrorApi + Clone + 'static, K: TopEncode + TopDecode + 'static, V: StorageMapper<SA> + StorageClearable,
{ /* private fields */ }

Implementations§

source§

impl<SA, K, V> MapStorageMapper<SA, K, V>

source

pub fn is_empty(&self) -> bool

Returns true if the map contains no elements.

source

pub fn len(&self) -> usize

Returns the number of elements in the map.

source

pub fn contains_key(&self, k: &K) -> bool

Returns true if the map contains a value for the specified key.

source

pub fn get(&self, k: &K) -> Option<V>

Gets a reference to the value in the entry.

source

pub fn insert_default(&mut self, k: K) -> bool

Adds a default value for the key, if it is not already present.

If the map did not have this key present, true is returned.

If the map did have this value present, false is returned.

source

pub fn get_or_insert_default(&mut self, k: K) -> V

Returns the value corresponding to the key.

If the key is not found, it is inserted and a new default value is returned.

source

pub fn remove(&mut self, k: &K) -> bool

Takes the value out of the entry, and returns it.

source

pub fn keys(&self) -> Iter<'_, SA, K>

An iterator visiting all keys in arbitrary order. The iterator element type is &'a K.

source

pub fn values(&self) -> Values<'_, SA, K, V>

An iterator visiting all values in arbitrary order. The iterator element type is &'a V.

source

pub fn iter(&self) -> Iter<'_, SA, K, V>

An iterator visiting all key-value pairs in arbitrary order. The iterator element type is (&'a K, &'a V).

Trait Implementations§

source§

impl<SA, K, V> StorageClearable for MapStorageMapper<SA, K, V>

source§

fn clear(&mut self)

Clears all the entries owned by the storage.
source§

impl<SA, K, V> StorageMapper<SA> for MapStorageMapper<SA, K, V>

source§

fn new(api: SA, main_key: BoxedBytes) -> Self

Will be called automatically by the #[storage_mapper] annotation generated code.

Auto Trait Implementations§

§

impl<SA, K, V> RefUnwindSafe for MapStorageMapper<SA, K, V>

§

impl<SA, K, V> Send for MapStorageMapper<SA, K, V>
where K: Send, SA: Send, V: Send,

§

impl<SA, K, V> Sync for MapStorageMapper<SA, K, V>
where K: Sync, SA: Sync, V: Sync,

§

impl<SA, K, V> Unpin for MapStorageMapper<SA, K, V>
where K: Unpin, SA: Unpin, V: Unpin,

§

impl<SA, K, V> UnwindSafe for MapStorageMapper<SA, K, V>
where K: UnwindSafe, SA: UnwindSafe, V: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.