pub enum SystemInstruction {
CreateAccount {
lamports: u64,
space: u64,
owner: Pubkey,
},
Assign {
owner: Pubkey,
},
Transfer {
lamports: u64,
},
CreateAccountWithSeed {
base: Pubkey,
seed: String,
lamports: u64,
space: u64,
owner: Pubkey,
},
AdvanceNonceAccount {
authorized: Pubkey,
},
WithdrawNonceAccount {
lamports: u64,
},
InitializeNonceAccount {
authorized: Pubkey,
},
AuthorizeNonceAccount {
authorized: Pubkey,
},
Allocate {
space: u64,
},
AllocateWithSeed {
base: Pubkey,
seed: String,
space: u64,
owner: Pubkey,
},
AssignWithSeed {
base: Pubkey,
seed: String,
owner: Pubkey,
},
TransferWithSeed {
lamports: u64,
seed: String,
owner: Pubkey,
},
}Expand description
System program instruction types
Variants§
CreateAccount
Create a new account
0. [WRITE, SIGNER] Funding account
[WRITE, SIGNER]New account
Fields
Assign
Assign account to a program
0. [WRITE, SIGNER] Assigned account
Transfer
Transfer lamports
0. [WRITE, SIGNER] Source account
[WRITE]Destination account
CreateAccountWithSeed
Create a new account at an address derived from a base pubkey and a seed
0. [WRITE, SIGNER] Funding account
[WRITE]Created account[]Base account
Fields
AdvanceNonceAccount
Advance the nonce in a nonce account
0. [WRITE, SIGNER] Nonce account
[]Recent blockhashes sysvar[SIGNER]Nonce authority
Fields
Nonce authority
WithdrawNonceAccount
Withdraw funds from a nonce account
0. [WRITE] Nonce account
[WRITE]Recipient account[SIGNER]Nonce authority[]Recent blockhashes sysvar
InitializeNonceAccount
Drive state of Nonce account
0. [WRITE] Nonce account
[SIGNER]Nonce authority
Fields
Nonce authority
AuthorizeNonceAccount
Change the entity authorized to manage nonce
0. [WRITE] Nonce account
[SIGNER]Nonce authority
Fields
New authority
Allocate
Allocate space in an account
0. [WRITE, SIGNER] Account to allocate
AllocateWithSeed
Allocate space in an account at an address derived from a base account and a seed
0. [WRITE] Allocated account
[SIGNER]Base account
Fields
AssignWithSeed
Assign an account at an address derived from a base account and a seed
0. [WRITE] Assigned account
[SIGNER]Base account
Fields
TransferWithSeed
Transfer lamports from an account at an address derived from a base account and a seed
0. [WRITE] Source account
[WRITE]Destination account[SIGNER]Base account
Implementations§
Trait Implementations§
Source§impl BorshDeserialize for SystemInstruction
impl BorshDeserialize for SystemInstruction
fn deserialize_reader<__R: Read>(reader: &mut __R) -> Result<Self, Error>
Source§fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
Source§fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_reader<R>(reader: &mut R) -> Result<Self, Error>where
R: Read,
Source§impl BorshSerialize for SystemInstruction
impl BorshSerialize for SystemInstruction
Source§impl Clone for SystemInstruction
impl Clone for SystemInstruction
Source§fn clone(&self) -> SystemInstruction
fn clone(&self) -> SystemInstruction
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SystemInstruction
impl Debug for SystemInstruction
Source§impl EnumExt for SystemInstruction
impl EnumExt for SystemInstruction
impl Eq for SystemInstruction
Source§impl PartialEq for SystemInstruction
impl PartialEq for SystemInstruction
Source§fn eq(&self, other: &SystemInstruction) -> bool
fn eq(&self, other: &SystemInstruction) -> bool
self and other values to be equal, and is used by ==.