pub struct CreatePublicAutomationCpiBuilder<'a, 'b> { /* private fields */ }Expand description
Instruction builder for CreatePublicAutomation via CPI.
§Accounts:
[writable, signer]authority[]satrush_config[writable]public_automation[]usd_mint[writable]authority_usd_ata[writable]automation_usd_ata[writable]miner[]token_program[]associated_token_program[]system_program
Implementations§
Source§impl<'a, 'b> CreatePublicAutomationCpiBuilder<'a, 'b>
impl<'a, 'b> CreatePublicAutomationCpiBuilder<'a, 'b>
pub fn new(program: &'b AccountInfo<'a>) -> Self
pub fn satrush_config( &mut self, satrush_config: &'b AccountInfo<'a>, ) -> &mut Self
Sourcepub fn public_automation(
&mut self,
public_automation: &'b AccountInfo<'a>,
) -> &mut Self
pub fn public_automation( &mut self, public_automation: &'b AccountInfo<'a>, ) -> &mut Self
One automation per authority: init fails if one already exists.
pub fn usd_mint(&mut self, usd_mint: &'b AccountInfo<'a>) -> &mut Self
User’s USD account the deposit is pulled from.
Sourcepub fn automation_usd_ata(
&mut self,
automation_usd_ata: &'b AccountInfo<'a>,
) -> &mut Self
pub fn automation_usd_ata( &mut self, automation_usd_ata: &'b AccountInfo<'a>, ) -> &mut Self
The automation’s escrow, created here. init_if_needed rather than
init: the ATA address is derived from the automation PDA/USD mint
alone, so anyone can pre-create it before this instruction runs; with
plain init that pre-creation would permanently block this authority
from ever creating their automation. A pre-existing balance is treated
as a donation — it is swept out by cancel.
Sourcepub fn miner(&mut self, miner: &'b AccountInfo<'a>) -> &mut Self
pub fn miner(&mut self, miner: &'b AccountInfo<'a>) -> &mut Self
Miner profile for authority, created here if missing (user pays rent)
so the crank-side execute never has to create it.
pub fn token_program(&mut self, token_program: &'b AccountInfo<'a>) -> &mut Self
pub fn associated_token_program( &mut self, associated_token_program: &'b AccountInfo<'a>, ) -> &mut Self
pub fn system_program( &mut self, system_program: &'b AccountInfo<'a>, ) -> &mut Self
pub fn strategy(&mut self, strategy: AutomationStrategy) -> &mut Self
pub fn selection_mask(&mut self, selection_mask: u32) -> &mut Self
pub fn per_round_usd_amount(&mut self, per_round_usd_amount: u64) -> &mut Self
pub fn reload(&mut self, reload: bool) -> &mut Self
pub fn deposit_usd_amount(&mut self, deposit_usd_amount: u64) -> &mut Self
Sourcepub fn add_remaining_account(
&mut self,
account: &'b AccountInfo<'a>,
is_writable: bool,
is_signer: bool,
) -> &mut Self
pub fn add_remaining_account( &mut self, account: &'b AccountInfo<'a>, is_writable: bool, is_signer: bool, ) -> &mut Self
Add an additional account to the instruction.
Sourcepub fn add_remaining_accounts(
&mut self,
accounts: &[(&'b AccountInfo<'a>, bool, bool)],
) -> &mut Self
pub fn add_remaining_accounts( &mut self, accounts: &[(&'b AccountInfo<'a>, bool, bool)], ) -> &mut Self
Add additional accounts to the instruction.
Each account is represented by a tuple of the AccountInfo, a bool indicating whether the account is writable or not,
and a bool indicating whether the account is a signer or not.
pub fn invoke(&self) -> ProgramResult
pub fn invoke_signed(&self, signers_seeds: &[&[&[u8]]]) -> ProgramResult
Trait Implementations§
Source§impl<'a, 'b> Clone for CreatePublicAutomationCpiBuilder<'a, 'b>
impl<'a, 'b> Clone for CreatePublicAutomationCpiBuilder<'a, 'b>
Source§fn clone(&self) -> CreatePublicAutomationCpiBuilder<'a, 'b>
fn clone(&self) -> CreatePublicAutomationCpiBuilder<'a, 'b>
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl<'a, 'b> !RefUnwindSafe for CreatePublicAutomationCpiBuilder<'a, 'b>
impl<'a, 'b> !Send for CreatePublicAutomationCpiBuilder<'a, 'b>
impl<'a, 'b> !Sync for CreatePublicAutomationCpiBuilder<'a, 'b>
impl<'a, 'b> !UnwindSafe for CreatePublicAutomationCpiBuilder<'a, 'b>
impl<'a, 'b> Freeze for CreatePublicAutomationCpiBuilder<'a, 'b>
impl<'a, 'b> Unpin for CreatePublicAutomationCpiBuilder<'a, 'b>
impl<'a, 'b> UnsafeUnpin for CreatePublicAutomationCpiBuilder<'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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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