pub struct Create {Show 18 fields
pub sender: Pubkey,
pub sender_tokens: Pubkey,
pub recipient: Pubkey,
pub metadata: Pubkey,
pub escrow_tokens: Pubkey,
pub recipient_tokens: Pubkey,
pub streamflow_treasury: Pubkey,
pub streamflow_treasury_tokens: Pubkey,
pub withdrawor: Pubkey,
pub partner: Pubkey,
pub partner_tokens: Pubkey,
pub mint: Pubkey,
pub fee_oracle: Pubkey,
pub rent: Pubkey,
pub timelock_program: Pubkey,
pub token_program: Pubkey,
pub associated_token_program: Pubkey,
pub system_program: Pubkey,
}Expand description
Generated client accounts for Create.
Fields§
§sender: PubkeyWallet of the contract creator.
sender_tokens: PubkeyAssociated token account address of sender.
recipient: PubkeyWallet address of the recipient.
metadata: PubkeyThe account holding the contract parameters. Expects empty (non-initialized) account that should also be a signer.
escrow_tokens: PubkeyThe escrow account holding the funds.
Should be a PDA, use streamflow_sdk::state::find_escrow_account to derive
Expects empty (non-initialized) account.
recipient_tokens: PubkeyAssociated token account address of recipient.
streamflow_treasury: PubkeyStreamflow treasury account.
Use constant streamflow_sdk::state::STRM_TREASURY
streamflow_treasury_tokens: PubkeyAssociated token account address of streamflow_treasury.
withdrawor: PubkeyDelegate account for automatically withdrawing contracts.
Use constant streamflow_sdk::state::WITHDRAWOR_ADDRESS
partner: PubkeyPartner treasury account. If no partner fees are expected on behalf of the program
integrating with streamflow, streamflow_treasury can be passed in here.
partner_tokens: PubkeyAssociated token account address of partner. If no partner fees are expected on behalf of the
program integrating with streamflow, streamflow_treasury_tokens can be passed in here.
mint: PubkeyThe SPL token mint account.
fee_oracle: PubkeyInternal program that handles fees for specified partners. If no partner fees are expected
on behalf of the program integrating with streamflow, streamflow_treasury can be passed
in here.
Use constant streamflow_sdk::state::FEE_ORACLE_ADDRESS
rent: PubkeyThe Rent Sysvar account.
timelock_program: PubkeyStreamflow protocol (alias timelock) program account.
Use streamflow_sdk:id()
token_program: PubkeyThe SPL program needed in case an associated account for the new recipient is being created.
associated_token_program: PubkeyThe Associated Token program needed in case associated account for the new recipient is being created.
system_program: PubkeyThe Solana system program needed for account creation.
Trait Implementations§
Source§impl BorshSerialize for Createwhere
Pubkey: BorshSerialize,
impl BorshSerialize for Createwhere
Pubkey: BorshSerialize,
Source§impl ToAccountMetas for Create
impl ToAccountMetas for Create
Source§fn to_account_metas(&self, is_signer: Option<bool>) -> Vec<AccountMeta>
fn to_account_metas(&self, is_signer: Option<bool>) -> Vec<AccountMeta>
is_signer is given as an optional override for the signer meta field.
This covers the edge case when a program-derived-address needs to relay
a transaction from a client to another program but sign the transaction
before the relay. The client cannot mark the field as a signer, and so
we have to override the is_signer meta field given by the client.Auto Trait Implementations§
impl Freeze for Create
impl RefUnwindSafe for Create
impl Send for Create
impl Sync for Create
impl Unpin for Create
impl UnwindSafe for Create
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
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>
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>
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