multiversx_sc_snippets::imports

Struct MapStorageMapper

Source
pub struct MapStorageMapper<SA, K, V, A = CurrentStorage>
where SA: StorageMapperApi, K: TopEncode + TopDecode + NestedEncode + NestedDecode + 'static, A: StorageAddress<SA>, V: StorageMapper<SA> + StorageClearable,
{ /* private fields */ }

Implementations§

Source§

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

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 remove(&mut self, k: &K) -> bool

Removes the entry from the map.

If the entry was removed, true is returned.

If the map didn’t contain an entry with this key, false is returned.

Source§

impl<SA, A, K, V> MapStorageMapper<SA, K, V, A>
where SA: StorageMapperApi, A: StorageAddress<SA>, K: TopEncode + TopDecode + NestedEncode + NestedDecode, V: StorageMapper<SA> + StorageClearable,

Source

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

Gets a reference to the value in the entry.

Source

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

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 entry(&mut self, key: K) -> Entry<'_, SA, A, K, V>

Gets the given key’s corresponding entry in the map for in-place manipulation.

Source

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

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

Source

pub fn iter(&self) -> Iter<'_, SA, A, 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<'a, SA, A, K, V> IntoIterator for &'a MapStorageMapper<SA, K, V, A>
where SA: StorageMapperApi, A: StorageAddress<SA>, K: TopEncode + TopDecode + NestedEncode + NestedDecode + 'static, V: StorageMapper<SA> + StorageClearable,

Source§

type Item = (K, V)

The type of the elements being iterated over.
Source§

type IntoIter = Iter<'a, SA, A, K, V>

Which kind of iterator are we turning this into?
Source§

fn into_iter( self, ) -> <&'a MapStorageMapper<SA, K, V, A> as IntoIterator>::IntoIter

Creates an iterator from a value. Read more
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(base_key: StorageKey<SA>) -> MapStorageMapper<SA, K, V>

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

impl<SA, K, V> StorageMapperFromAddress<SA> for MapStorageMapper<SA, K, V, ManagedAddress<SA>>

Source§

fn new_from_address( address: ManagedAddress<SA>, base_key: StorageKey<SA>, ) -> MapStorageMapper<SA, K, V, ManagedAddress<SA>>

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

Auto Trait Implementations§

§

impl<SA, K, V, A> Freeze for MapStorageMapper<SA, K, V, A>

§

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

§

impl<SA, K, V, A> Send for MapStorageMapper<SA, K, V, A>
where SA: Send, A: Send, V: Send, <SA as HandleTypeInfo>::ManagedBufferHandle: Send, K: Send,

§

impl<SA, K, V, A> Sync for MapStorageMapper<SA, K, V, A>
where SA: Sync, A: Sync, V: Sync, <SA as HandleTypeInfo>::ManagedBufferHandle: Sync, K: Sync,

§

impl<SA, K, V, A> Unpin for MapStorageMapper<SA, K, V, A>
where SA: Unpin, A: Unpin, V: Unpin, <SA as HandleTypeInfo>::ManagedBufferHandle: Unpin, K: Unpin,

§

impl<SA, K, V, A> UnwindSafe for MapStorageMapper<SA, K, V, A>

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> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T> InterpretableFrom<T> for T

Source§

fn interpret_from(from: T, _context: &InterpreterContext) -> T

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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> ReconstructableFrom<T> for T

Source§

fn reconstruct_from(from: T, _builder: &ReconstructorContext) -> T

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

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

Source§

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>,

Source§

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.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T