Macro gear_common::wrap_storage_map
source · macro_rules! wrap_storage_map { (storage: $storage: ident, name: $name: ident, key: $key: ty, value: $val: ty) => { ... }; }
Expand description
Creates new type with specified name and key-value types and implements
MapStorage
for it based on specified storage,
which is a Substrate
’s StorageMap
.
This macro main purpose is to follow newtype pattern
and avoid Substrate
dependencies in gear_common
.
Requires PhantomData
be in scope: from std
, core
or sp_std
.
Requires Config
be in scope of the crate root where it called.
Has two implementations to provide auto addition of Counted
logic
(for Substrate
’s CountedStorageMap
) due to storage’s
arguments difference.