Skip to main content

PodAccount

Struct PodAccount 

Source
#[repr(C)]
pub struct PodAccount { pub mint: Address, pub owner: Address, pub amount: U64, pub delegate: PodCOption<Address>, pub state: u8, pub is_native: PodCOption<U64>, pub delegated_amount: U64, pub close_authority: PodCOption<Address>, }
Expand description

crate::state::Account data stored as a Pod type

Fields§

§mint: Address

The mint associated with this account

§owner: Address

The owner of this account.

§amount: U64

The amount of tokens this account holds.

§delegate: PodCOption<Address>

If delegate is Some then delegated_amount represents the amount authorized by the delegate

§state: u8

The account’s AccountState, stored as a u8

§is_native: PodCOption<U64>

If is_some, this is a native token, and the value logs the rent-exempt reserve. An Account is required to be rent-exempt, so the value is used by the Processor to ensure that wrapped SOL accounts do not drop below this threshold.

§delegated_amount: U64

The amount delegated

§close_authority: PodCOption<Address>

Optional authority to close the account.

Implementations§

Source§

impl PodAccount

Source

pub fn is_frozen(&self) -> bool

Checks if account is frozen

Source

pub fn is_native(&self) -> bool

Checks if account is native

Source

pub fn is_owned_by_system_program_or_incinerator(&self) -> bool

Checks if a token Account’s owner is the system_program or the incinerator

Trait Implementations§

Source§

impl BaseState for PodAccount

Source§

const ACCOUNT_TYPE: AccountType = AccountType::Account

Associated extension type enum, checked at the start of TLV entries
Source§

impl Clone for PodAccount

Source§

fn clone(&self) -> PodAccount

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for PodAccount

Source§

impl Debug for PodAccount

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for PodAccount

Source§

fn default() -> PodAccount

Returns the “default value” for a type. Read more
Source§

impl IsInitialized for PodAccount

Source§

fn is_initialized(&self) -> bool

Is initialized
Source§

impl PackedSizeOf for PodAccount

Source§

const SIZE_OF: usize

The packed size of the struct
Source§

impl PartialEq for PodAccount

Source§

fn eq(&self, other: &PodAccount) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Pod for PodAccount

Source§

impl StructuralPartialEq for PodAccount

Source§

impl Zeroable for PodAccount

Source§

fn zeroed() -> Self

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> AnyBitPattern for T
where T: Pod,

Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CheckedBitPattern for T
where T: AnyBitPattern,

Source§

type Bits = T

Self must have the same layout as the specified Bits except for the possible invalid bit patterns being checked during is_valid_bit_pattern.
Source§

fn is_valid_bit_pattern(_bits: &T) -> bool

If this function returns true, then it must be valid to reinterpret bits as &Self.
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> NoUninit for T
where T: Pod,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.