[][src]Struct solana_ledger::bank_forks::BankForks

pub struct BankForks {
    pub banks: HashMap<Slot, Arc<Bank>>,
    pub snapshot_config: Option<SnapshotConfig>,
    pub accounts_hash_interval_slots: Slot,
    // some fields omitted
}

Fields

banks: HashMap<Slot, Arc<Bank>>snapshot_config: Option<SnapshotConfig>accounts_hash_interval_slots: Slot

Implementations

impl BankForks[src]

pub fn new(bank: Bank) -> Self[src]

pub fn ancestors(&self) -> HashMap<Slot, HashSet<Slot>>[src]

Create a map of bank slot id to the set of ancestors for the bank slot.

pub fn descendants(&self) -> HashMap<Slot, HashSet<Slot>>[src]

Create a map of bank slot id to the set of all of its descendants

pub fn frozen_banks(&self) -> HashMap<Slot, Arc<Bank>>[src]

pub fn active_banks(&self) -> Vec<Slot>[src]

pub fn get(&self, bank_slot: Slot) -> Option<&Arc<Bank>>[src]

pub fn root_bank(&self) -> &Arc<Bank>[src]

pub fn new_from_banks(initial_forks: &[Arc<Bank>], root: Slot) -> Self[src]

pub fn insert(&mut self, bank: Bank) -> Arc<Bank>[src]

pub fn remove(&mut self, slot: Slot) -> Option<Arc<Bank>>[src]

pub fn working_bank(&self) -> Arc<Bank>[src]

pub fn set_root(
    &mut self,
    root: Slot,
    accounts_package_sender: &Option<AccountsPackageSender>,
    largest_confirmed_root: Option<Slot>
)
[src]

pub fn root(&self) -> Slot[src]

pub fn purge_old_snapshots(&self)[src]

pub fn generate_accounts_package(
    &self,
    root: Slot,
    slots_to_snapshot: &[Slot],
    accounts_package_sender: &AccountsPackageSender
) -> Result<(), BankForksError>
[src]

pub fn set_snapshot_config(&mut self, snapshot_config: Option<SnapshotConfig>)[src]

pub fn snapshot_config(&self) -> &Option<SnapshotConfig>[src]

pub fn set_accounts_hash_interval_slots(&mut self, accounts_interval_slots: u64)[src]

Trait Implementations

impl Index<u64> for BankForks[src]

type Output = Arc<Bank>

The returned type after indexing.

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,