[−][src]Struct solana_core::consensus::Tower
Methods
impl Tower
[src]
pub fn new(
node_pubkey: &Pubkey,
vote_account_pubkey: &Pubkey,
bank_forks: &BankForks
) -> Self
[src]
node_pubkey: &Pubkey,
vote_account_pubkey: &Pubkey,
bank_forks: &BankForks
) -> Self
pub fn new_with_key(node_pubkey: &Pubkey) -> Self
[src]
pub fn collect_vote_lockouts<F>(
&self,
bank_slot: u64,
vote_accounts: F,
ancestors: &HashMap<Slot, HashSet<u64>>
) -> (HashMap<Slot, StakeLockout>, u64, u128) where
F: Iterator<Item = (Pubkey, (u64, Account))>,
[src]
&self,
bank_slot: u64,
vote_accounts: F,
ancestors: &HashMap<Slot, HashSet<u64>>
) -> (HashMap<Slot, StakeLockout>, u64, u128) where
F: Iterator<Item = (Pubkey, (u64, Account))>,
pub fn is_slot_confirmed(
&self,
slot: u64,
lockouts: &HashMap<u64, StakeLockout>,
total_staked: u64
) -> bool
[src]
&self,
slot: u64,
lockouts: &HashMap<u64, StakeLockout>,
total_staked: u64
) -> bool
pub fn new_vote_from_bank(
&self,
bank: &Bank,
vote_account_pubkey: &Pubkey
) -> (Vote, usize)
[src]
&self,
bank: &Bank,
vote_account_pubkey: &Pubkey
) -> (Vote, usize)
pub fn record_bank_vote(&mut self, vote: Vote) -> Option<Slot>
[src]
pub fn record_vote(&mut self, slot: Slot, hash: Hash) -> Option<Slot>
[src]
pub fn last_vote(&self) -> Vote
[src]
pub fn last_vote_and_timestamp(&mut self) -> Vote
[src]
pub fn root(&self) -> Option<Slot>
[src]
pub fn is_recent(&self, slot: u64) -> bool
[src]
pub fn has_voted(&self, slot: u64) -> bool
[src]
pub fn is_locked_out(
&self,
slot: Slot,
ancestors: &HashMap<Slot, HashSet<Slot>>
) -> bool
[src]
&self,
slot: Slot,
ancestors: &HashMap<Slot, HashSet<Slot>>
) -> bool
pub fn check_vote_stake_threshold(
&self,
slot: u64,
stake_lockouts: &HashMap<u64, StakeLockout>,
total_staked: u64
) -> bool
[src]
&self,
slot: u64,
stake_lockouts: &HashMap<u64, StakeLockout>,
total_staked: u64
) -> bool
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Tower
impl Send for Tower
impl Sync for Tower
impl Unpin for Tower
impl UnwindSafe for Tower
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,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Clear for T where
T: InitializableFromZeroed + ?Sized,
T: InitializableFromZeroed + ?Sized,
fn clear(&mut self)
impl<T> From<T> for T
[src]
impl<T> InitializableFromZeroed for T where
T: Default,
T: Default,
unsafe fn initialize(place: *mut T)
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
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]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
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.
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>,
V: MultiLane<T>,