[][src]Enum solana_stake_api::stake_instruction::StakeInstruction

pub enum StakeInstruction {
    DelegateStake(u64),
    RedeemVoteCredits,
    Withdraw(u64),
    Deactivate,
}

Variants

DelegateStake(u64)

Delegate a stake to a particular node

Expects 3 Accounts: 0 - Uninitialized StakeAccount to be delegated <= must have this signature 1 - VoteAccount to which this Stake will be delegated 2 - Clock sysvar Account that carries clock bank epoch 3 - Config Account that carries stake config

The u64 is the portion of the Stake account balance to be activated, must be less than StakeAccount.lamports

RedeemVoteCredits

Redeem credits in the stake account

Expects 4 Accounts: 0 - Delegate StakeAccount to be updated with rewards 1 - VoteAccount to which the Stake is delegated, 2 - RewardsPool Stake Account from which to redeem credits 3 - Rewards sysvar Account that carries points values 4 - StakeHistory sysvar that carries stake warmup/cooldown history

Withdraw(u64)

Withdraw unstaked lamports from the stake account

Expects 3 Accounts: 0 - Delegate StakeAccount 1 - System account to which the lamports will be transferred, 2 - Syscall Account that carries epoch 3 - StakeHistory sysvar that carries stake warmup/cooldown history

The u64 is the portion of the Stake account balance to be withdrawn, must be <= StakeAccount.lamports - staked lamports

Deactivate

Deactivates the stake in the account

Expects 2 Accounts: 0 - Delegate StakeAccount 1 - VoteAccount to which the Stake is delegated 2 - Syscall Account that carries epoch

Trait Implementations

impl PartialEq<StakeInstruction> for StakeInstruction[src]

impl Clone for StakeInstruction[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Eq for StakeInstruction[src]

impl Debug for StakeInstruction[src]

impl Serialize for StakeInstruction[src]

impl<'de> Deserialize<'de> for StakeInstruction[src]

Auto Trait Implementations

Blanket Implementations

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

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

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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<T> Borrow<T> for T where
    T: ?Sized
[src]

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

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

impl<T> DeserializeOwned for T where
    T: Deserialize<'de>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> Typeable for T where
    T: Any

fn get_type(&self) -> TypeId

Get the TypeId of this object.

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> Erased for T

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 

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