Struct solana_runtime::accounts_index::AccountsIndex [−][src]
pub struct AccountsIndex<T> { pub account_maps: RwLock<AccountMap<Pubkey, Arc<AccountMapEntryInner<T>>>>, // some fields omitted }
Fields
account_maps: RwLock<AccountMap<Pubkey, Arc<AccountMapEntryInner<T>>>>
Implementations
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 insert_new_if_missing(
&self,
slot: Slot,
pubkey: &Pubkey,
account_owner: &Pubkey,
account_data: &[u8],
account_indexes: &AccountSecondaryIndexes,
account_info: T,
reclaims: &mut SlotList<T>
)
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>
)
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
type Output = T
type Output = T
Should always be Self
pub fn vzip(self) -> V