tmp: temporary AccountCache
will be removed before PR ends Signed-off-by: kernelkind <kernelkind@gmail.com>
This commit is contained in:
@@ -90,6 +90,14 @@ impl AccountCache {
|
||||
.get_mut(&self.selected)
|
||||
.expect("guarenteed that selected exists in accounts")
|
||||
}
|
||||
|
||||
pub fn contains(&self, pk: &[u8; 32]) -> bool {
|
||||
self.accounts.contains_key(pk)
|
||||
}
|
||||
|
||||
pub(super) fn iter_mut(&mut self) -> AccountCacheIterMut<'_> {
|
||||
AccountCacheIterMut(self.accounts.iter_mut())
|
||||
}
|
||||
}
|
||||
|
||||
impl<'a> IntoIterator for &'a AccountCache {
|
||||
@@ -100,3 +108,13 @@ impl<'a> IntoIterator for &'a AccountCache {
|
||||
self.accounts.iter()
|
||||
}
|
||||
}
|
||||
|
||||
pub(super) struct AccountCacheIterMut<'a>(hashbrown::hash_map::IterMut<'a, Pubkey, UserAccount>);
|
||||
|
||||
impl<'a> Iterator for AccountCacheIterMut<'a> {
|
||||
type Item = (&'a Pubkey, &'a mut UserAccount);
|
||||
|
||||
fn next(&mut self) -> Option<Self::Item> {
|
||||
self.0.next()
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user