macro_rules! wrap_storage_triple_map {
    (storage: $storage: ident, name: $name: ident,
        key1: $key1: ty,
        key2: $key2: ty,
        key3: $key3: ty,
        value: $val: ty) => { ... };
Expand description

Creates new type with specified name and key1-key2-key3-value types and implements TripleMapStorage for it based on specified storage, which is a Substrate’s StorageNMap.

The 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.