#[repr(u8)]pub enum Capability {
ReadsState = 0,
MutatesState = 1,
TouchesJournal = 2,
ExternalCall = 3,
MutatesTreasury = 4,
ReallocatesAccount = 5,
CreatesAccount = 6,
ClosesAccount = 7,
ModifiesAuthority = 8,
TransitionsState = 9,
}Expand description
Instruction capability flags.
Each capability is a single bit in a u32 bitmask. Programs declare which capabilities an instruction requires.
Variants§
ReadsState = 0
Instruction reads owned account data.
MutatesState = 1
Instruction mutates owned account data.
TouchesJournal = 2
Instruction writes to a journal segment.
ExternalCall = 3
Instruction calls another program via CPI.
MutatesTreasury = 4
Instruction modifies treasury/vault balances.
ReallocatesAccount = 5
Instruction performs account reallocation.
CreatesAccount = 6
Instruction creates a new account.
ClosesAccount = 7
Instruction closes an account.
ModifiesAuthority = 8
Instruction modifies permissions/authority.
TransitionsState = 9
Instruction triggers a state machine transition.
Implementations§
Trait Implementations§
Source§impl Clone for Capability
impl Clone for Capability
Source§fn clone(&self) -> Capability
fn clone(&self) -> Capability
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl PartialEq for Capability
impl PartialEq for Capability
Source§fn eq(&self, other: &Capability) -> bool
fn eq(&self, other: &Capability) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Copy for Capability
impl Eq for Capability
impl StructuralPartialEq for Capability
Auto Trait Implementations§
impl Freeze for Capability
impl RefUnwindSafe for Capability
impl Send for Capability
impl Sync for Capability
impl Unpin for Capability
impl UnsafeUnpin for Capability
impl UnwindSafe for Capability
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