pub struct TransferCpi<'a, 'b> {
pub __program: &'b AccountInfo<'a>,
pub user_token_account: &'b AccountInfo<'a>,
pub recipient_token_account: &'b AccountInfo<'a>,
pub user: &'b AccountInfo<'a>,
pub payer: Option<&'b AccountInfo<'a>>,
pub system_program: Option<&'b AccountInfo<'a>>,
pub __args: TransferInstructionArgs,
}Expand description
transfer CPI instruction.
Fields§
§__program: &'b AccountInfo<'a>The program to invoke.
user_token_account: &'b AccountInfo<'a>The token authority account.
recipient_token_account: &'b AccountInfo<'a>The token authority account.
user: &'b AccountInfo<'a>The pubkey of the user associated with the token account
payer: Option<&'b AccountInfo<'a>>The account paying for the storage fees.
system_program: Option<&'b AccountInfo<'a>>The system program
__args: TransferInstructionArgsThe arguments for the instruction.
Implementations§
Source§impl<'a, 'b> TransferCpi<'a, 'b>
impl<'a, 'b> TransferCpi<'a, 'b>
pub fn new( program: &'b AccountInfo<'a>, accounts: TransferCpiAccounts<'a, 'b>, args: TransferInstructionArgs, ) -> Self
pub fn invoke(&self) -> ProgramResult
pub fn invoke_with_remaining_accounts( &self, remaining_accounts: &[(&'b AccountInfo<'a>, bool, bool)], ) -> ProgramResult
pub fn invoke_signed(&self, signers_seeds: &[&[&[u8]]]) -> ProgramResult
pub fn invoke_signed_with_remaining_accounts( &self, signers_seeds: &[&[&[u8]]], remaining_accounts: &[(&'b AccountInfo<'a>, bool, bool)], ) -> ProgramResult
Auto Trait Implementations§
impl<'a, 'b> Freeze for TransferCpi<'a, 'b>
impl<'a, 'b> !RefUnwindSafe for TransferCpi<'a, 'b>
impl<'a, 'b> !Send for TransferCpi<'a, 'b>
impl<'a, 'b> !Sync for TransferCpi<'a, 'b>
impl<'a, 'b> Unpin for TransferCpi<'a, 'b>
impl<'a, 'b> !UnwindSafe for TransferCpi<'a, 'b>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more