Struct mpl_token_auth_rules::state::ProgramOwned
source · pub struct ProgramOwned<'a> {
pub program: &'a Pubkey,
pub field: &'a Str32,
}Expand description
Constraint representing a test where a Pubkey must be owned by a given program.
This constraint requires a PayloadType value of PayloadType::Pubkey. The field value in
the rule is used to locate the Pubkey in the payload for which the owner must be the
program in the rule. Note this same Pubkey account must also be provided to Validate
via the additional_rule_accounts argument. This is so that the Pubkey’s owner can be
found from its AccountInfo struct.
Fields§
§program: &'a PubkeyThe program that must own the Pubkey.
field: &'a Str32The field in the Payload to be compared.
Implementations§
source§impl<'a> ProgramOwned<'a>
impl<'a> ProgramOwned<'a>
sourcepub fn from_bytes(bytes: &'a [u8]) -> Result<Self, RuleSetError>
pub fn from_bytes(bytes: &'a [u8]) -> Result<Self, RuleSetError>
Deserialize a constraint from a byte array.
Trait Implementations§
source§impl<'a> Constraint<'a> for ProgramOwned<'a>
impl<'a> Constraint<'a> for ProgramOwned<'a>
source§fn constraint_type(&self) -> ConstraintType
fn constraint_type(&self) -> ConstraintType
Returns the type of the constraint.
source§fn validate(
&self,
accounts: &HashMap<Pubkey, &AccountInfo<'_>>,
payload: &Payload,
_update_rule_state: bool,
_rule_set_state_pda: &Option<&AccountInfo<'_>>,
_rule_authority: &Option<&AccountInfo<'_>>
) -> RuleResult
fn validate( &self, accounts: &HashMap<Pubkey, &AccountInfo<'_>>, payload: &Payload, _update_rule_state: bool, _rule_set_state_pda: &Option<&AccountInfo<'_>>, _rule_authority: &Option<&AccountInfo<'_>> ) -> RuleResult
Validates the constraint condition.
Auto Trait Implementations§
impl<'a> RefUnwindSafe for ProgramOwned<'a>
impl<'a> Send for ProgramOwned<'a>
impl<'a> Sync for ProgramOwned<'a>
impl<'a> Unpin for ProgramOwned<'a>
impl<'a> UnwindSafe for ProgramOwned<'a>
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