Let StorageDoubleMap use borrowed key types (#1804)

* Let StorageDoubleMap use borrowed key types

* Bump impl version
This commit is contained in:
Jordan Beauchamp
2019-02-22 07:26:31 +13:00
committed by Gav Wood
parent 4bf4b37185
commit f5ab24804f
7 changed files with 64 additions and 21 deletions
+3 -3
View File
@@ -54,7 +54,7 @@ pub trait AccountDb<T: Trait> {
pub struct DirectAccountDb;
impl<T: Trait> AccountDb<T> for DirectAccountDb {
fn get_storage(&self, account: &T::AccountId, location: &[u8]) -> Option<Vec<u8>> {
<StorageOf<T>>::get(account.clone(), location.to_vec())
<StorageOf<T>>::get(account, &location.to_vec())
}
fn get_code(&self, account: &T::AccountId) -> Option<CodeHash<T>> {
<CodeHashOf<T>>::get(account)
@@ -83,9 +83,9 @@ impl<T: Trait> AccountDb<T> for DirectAccountDb {
}
for (k, v) in changed.storage.into_iter() {
if let Some(value) = v {
<StorageOf<T>>::insert(address.clone(), k, value);
<StorageOf<T>>::insert(&address, &k, value);
} else {
<StorageOf<T>>::remove(address.clone(), k);
<StorageOf<T>>::remove(&address, &k);
}
}
}