Struct quarry_mine::UserClaimV2
source · [−]pub struct UserClaimV2<'info> {
pub authority: Signer<'info>,
pub miner: Account<'info, Miner>,
pub quarry: Account<'info, Quarry>,
pub token_program: Program<'info, Token>,
pub rewarder: Account<'info, Rewarder>,
}
Expand description
Claim accounts
This accounts struct is always used in the context of the user authority staking into an account. This is NEVER used by an admin.
Validation should be extremely conservative.
Fields
Miner authority (i.e. the user).
miner: Account<'info, Miner>
Miner.
quarry: Account<'info, Quarry>
Quarry to claim from.
token_program: Program<'info, Token>
Token program
rewarder: Account<'info, Rewarder>
Rewarder
Trait Implementations
sourceimpl<'info> Accounts<'info> for UserClaimV2<'info> where
'info: 'info,
impl<'info> Accounts<'info> for UserClaimV2<'info> where
'info: 'info,
sourcefn try_accounts(
program_id: &Pubkey,
accounts: &mut &[AccountInfo<'info>],
ix_data: &[u8],
__bumps: &mut BTreeMap<String, u8>
) -> Result<Self>
fn try_accounts(
program_id: &Pubkey,
accounts: &mut &[AccountInfo<'info>],
ix_data: &[u8],
__bumps: &mut BTreeMap<String, u8>
) -> Result<Self>
Returns the validated accounts struct. What constitutes “valid” is
program dependent. However, users of these types should never have to
worry about account substitution attacks. For example, if a program
expects a Mint
account from the SPL token program in a particular
field, then it should be impossible for this method to return Ok
if
any other account type is given–from the SPL token program or elsewhere. Read more
sourceimpl<'info> AccountsExit<'info> for UserClaimV2<'info> where
'info: 'info,
impl<'info> AccountsExit<'info> for UserClaimV2<'info> where
'info: 'info,
sourceimpl<'info> Clone for UserClaimV2<'info>
impl<'info> Clone for UserClaimV2<'info>
sourcefn clone(&self) -> UserClaimV2<'info>
fn clone(&self) -> UserClaimV2<'info>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl<'info> ToAccountInfos<'info> for UserClaimV2<'info> where
'info: 'info,
impl<'info> ToAccountInfos<'info> for UserClaimV2<'info> where
'info: 'info,
sourceimpl<'info> ToAccountMetas for UserClaimV2<'info>
impl<'info> ToAccountMetas for UserClaimV2<'info>
sourcefn to_account_metas(&self, is_signer: Option<bool>) -> Vec<AccountMeta>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
fn to_account_metas(&self, is_signer: Option<bool>) -> Vec<AccountMeta>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
A: Allocator,
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. Read more
Auto Trait Implementations
impl<'info> !RefUnwindSafe for UserClaimV2<'info>
impl<'info> !Send for UserClaimV2<'info>
impl<'info> !Sync for UserClaimV2<'info>
impl<'info> Unpin for UserClaimV2<'info>
impl<'info> !UnwindSafe for UserClaimV2<'info>
Blanket Implementations
impl<T> AbiExample for T
impl<T> AbiExample for T
default fn example() -> T
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more