[][src]Enum solana_sdk::nonce_instruction::NonceInstruction

pub enum NonceInstruction {
    Nonce,
    Withdraw(u64),
    Initialize(Pubkey),
    Authorize(Pubkey),
}

Variants

Nonce

Nonce consumes a stored nonce, replacing it with a successor

Expects 2 Accounts: 0 - A NonceAccount 1 - RecentBlockhashes sysvar

The current authority must sign a transaction executing this instrucion

Withdraw(u64)

Withdraw transfers funds out of the nonce account

Expects 4 Accounts: 0 - A NonceAccount 1 - A system account to which the lamports will be transferred 2 - RecentBlockhashes sysvar 3 - Rent sysvar

The u64 parameter is the lamports to withdraw, which must leave the account balance above the rent exempt reserve or at zero.

The current authority must sign a transaction executing this instruction

Initialize(Pubkey)

Initialize drives state of Uninitalized NonceAccount to Initialized, setting the nonce value.

Expects 3 Accounts: 0 - A NonceAccount in the Uninitialized state 1 - RecentBlockHashes sysvar 2 - Rent sysvar

The Pubkey parameter specifies the entity authorized to execute nonce instruction on the account

No signatures are required to execute this instruction, enabling derived nonce account addresses

Authorize(Pubkey)

Authorize changes the entity authorized to execute nonce instructions on the account

Expects 1 Account: 0 - A NonceAccount

The Pubkey parameter identifies the entity to authorize

The current authority must sign a transaction executing this instruction

Trait Implementations

impl Clone for NonceInstruction[src]

impl Debug for NonceInstruction[src]

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

impl PartialEq<NonceInstruction> for NonceInstruction[src]

impl Serialize for NonceInstruction[src]

impl StructuralPartialEq for NonceInstruction[src]

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> DeserializeOwned for T where
    T: Deserialize<'de>, 
[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> 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.