Struct solana_runtime::accounts_index::AccountsIndex [−][src]
pub struct AccountsIndex<T> {
pub account_maps: Vec<RwLock<AccountMap<Pubkey, Arc<AccountMapEntryInner<T>>>>>,
pub removed_bank_ids: Mutex<HashSet<BankId>>,
// some fields omitted
}
Fields
account_maps: Vec<RwLock<AccountMap<Pubkey, Arc<AccountMapEntryInner<T>>>>>
removed_bank_ids: Mutex<HashSet<BankId>>
Implementations
pub fn get_account_read_entry_with_lock(
&self,
pubkey: &Pubkey,
lock: &RwLockReadGuard<'_, AccountMap<Pubkey, Arc<AccountMapEntryInner<T>>>>
) -> Option<ReadAccountMapEntry<T>>
pub fn handle_dead_keys(
&self,
dead_keys: &[&Pubkey],
account_indexes: &AccountSecondaryIndexes
)
pub fn roots_and_ref_count(
&self,
locked_account_entry: &ReadAccountMapEntry<T>,
max: Option<Slot>
) -> (SlotList<T>, RefCount)
pub fn purge_exact<'a, C>(
&'a self,
pubkey: &Pubkey,
slots_to_purge: &'a C,
reclaims: &mut SlotList<T>
) -> bool where
C: Contains<'a, Slot>,
pub fn upsert(
&self,
slot: Slot,
pubkey: &Pubkey,
account_owner: &Pubkey,
account_data: &[u8],
account_indexes: &AccountSecondaryIndexes,
account_info: T,
reclaims: &mut SlotList<T>
) -> bool
pub fn clean_rooted_entries(
&self,
pubkey: &Pubkey,
reclaims: &mut SlotList<T>,
max_clean_root: Option<Slot>
)
Given a list of slots, return a new list of only the slots that are rooted
Remove the slot when the storage for the slot is freed Accounts no longer reference this slot.
Trait Implementations
Auto Trait Implementations
impl<T> !RefUnwindSafe for AccountsIndex<T>
impl<T> Send for AccountsIndex<T> where
T: Send + Sync,
impl<T> Sync for AccountsIndex<T> where
T: Send + Sync,
impl<T> Unpin for AccountsIndex<T>
impl<T> UnwindSafe for AccountsIndex<T>
Blanket Implementations
Mutably borrows from an owned value. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
pub fn vzip(self) -> V
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more