Struct solana_runtime::accounts_index::AccountsIndex [−][src]
Fields
account_maps: RwLock<AccountMap<Pubkey, Arc<AccountMapEntryInner<T>>>>
Implementations
impl<T: 'static + Clone + IsCached + ZeroLamport> AccountsIndex<T>
[src]
pub fn get_account_read_entry(
&self,
pubkey: &Pubkey
) -> Option<ReadAccountMapEntry<T>>
[src]
&self,
pubkey: &Pubkey
) -> Option<ReadAccountMapEntry<T>>
pub fn handle_dead_keys(
&self,
dead_keys: &[&Pubkey],
account_indexes: &HashSet<AccountIndex>
)
[src]
&self,
dead_keys: &[&Pubkey],
account_indexes: &HashSet<AccountIndex>
)
pub fn get_rooted_entries(
&self,
slice: SlotSlice<'_, T>,
max: Option<Slot>
) -> SlotList<T>
[src]
&self,
slice: SlotSlice<'_, T>,
max: Option<Slot>
) -> SlotList<T>
pub fn roots_and_ref_count(
&self,
locked_account_entry: &ReadAccountMapEntry<T>,
max: Option<Slot>
) -> (SlotList<T>, RefCount)
[src]
&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>,
account_indexes: &HashSet<AccountIndex>
) -> bool where
C: Contains<'a, Slot>,
[src]
&'a self,
pubkey: &Pubkey,
slots_to_purge: &'a C,
reclaims: &mut SlotList<T>,
account_indexes: &HashSet<AccountIndex>
) -> bool where
C: Contains<'a, Slot>,
pub fn min_ongoing_scan_root(&self) -> Option<Slot>
[src]
pub fn insert_new_if_missing(
&self,
slot: Slot,
pubkey: &Pubkey,
account_owner: &Pubkey,
account_data: &[u8],
account_indexes: &HashSet<AccountIndex>,
account_info: T,
reclaims: &mut SlotList<T>
)
[src]
&self,
slot: Slot,
pubkey: &Pubkey,
account_owner: &Pubkey,
account_data: &[u8],
account_indexes: &HashSet<AccountIndex>,
account_info: T,
reclaims: &mut SlotList<T>
)
pub fn upsert(
&self,
slot: Slot,
pubkey: &Pubkey,
account_owner: &Pubkey,
account_data: &[u8],
account_indexes: &HashSet<AccountIndex>,
account_info: T,
reclaims: &mut SlotList<T>
) -> bool
[src]
&self,
slot: Slot,
pubkey: &Pubkey,
account_owner: &Pubkey,
account_data: &[u8],
account_indexes: &HashSet<AccountIndex>,
account_info: T,
reclaims: &mut SlotList<T>
) -> bool
pub fn remove_zero_lamport_key(&self, pubkey: &Pubkey)
[src]
pub fn zero_lamport_pubkeys(&self) -> &DashSet<Pubkey>
[src]
pub fn unref_from_storage(&self, pubkey: &Pubkey)
[src]
pub fn ref_count_from_storage(&self, pubkey: &Pubkey) -> RefCount
[src]
pub fn clean_rooted_entries(
&self,
pubkey: &Pubkey,
reclaims: &mut SlotList<T>,
max_clean_root: Option<Slot>,
account_indexes: &HashSet<AccountIndex>
)
[src]
&self,
pubkey: &Pubkey,
reclaims: &mut SlotList<T>,
max_clean_root: Option<Slot>,
account_indexes: &HashSet<AccountIndex>
)
pub fn can_purge(max_root: Slot, slot: Slot) -> bool
[src]
pub fn is_root(&self, slot: Slot) -> bool
[src]
pub fn add_root(&self, slot: Slot, caching_enabled: bool)
[src]
pub fn add_uncleaned_roots<I>(&self, roots: I) where
I: IntoIterator<Item = Slot>,
[src]
I: IntoIterator<Item = Slot>,
pub fn max_root(&self) -> Slot
[src]
pub fn clean_dead_slot(&self, slot: Slot) -> Option<AccountsIndexRootsStats>
[src]
Remove the slot when the storage for the slot is freed Accounts no longer reference this slot.
pub fn reset_uncleaned_roots(
&self,
max_clean_root: Option<Slot>
) -> HashSet<Slot>
[src]
&self,
max_clean_root: Option<Slot>
) -> HashSet<Slot>
pub fn is_uncleaned_root(&self, slot: Slot) -> bool
[src]
pub fn num_roots(&self) -> usize
[src]
pub fn all_roots(&self) -> Vec<Slot>
[src]
Trait Implementations
impl<T: Debug> Debug for AccountsIndex<T>
[src]
impl<T: Default> Default for AccountsIndex<T>
[src]
fn default() -> AccountsIndex<T>
[src]
Auto Trait Implementations
impl<T> !RefUnwindSafe for AccountsIndex<T>
impl<T> Send for AccountsIndex<T> where
T: Send + Sync,
T: Send + Sync,
impl<T> Sync for AccountsIndex<T> where
T: Send + Sync,
T: Send + Sync,
impl<T> Unpin for AccountsIndex<T>
impl<T> UnwindSafe for AccountsIndex<T>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> MaybeDebug for T where
T: Debug,
[src]
T: Debug,
impl<T> Pointable for T
[src]
pub const ALIGN: usize
[src]
type Init = T
The type for initializers.
pub unsafe fn init(init: <T as Pointable>::Init) -> usize
[src]
pub unsafe fn deref<'a>(ptr: usize) -> &'a T
[src]
pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
[src]
pub unsafe fn drop(ptr: usize)
[src]
impl<T> Same<T> for T
[src]
type Output = T
Should always be Self
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Typeable for T where
T: Any,
T: Any,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
[src]
V: MultiLane<T>,
impl<T> WithSubscriber for T
[src]
pub fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
[src]
S: Into<Dispatch>,