#[repr(C)]pub struct ConfidentialTransferAccount {Show 13 fields
pub approved: PodBool,
pub encryption_pubkey: EncryptionPubkey,
pub pending_balance_lo: EncryptedBalance,
pub pending_balance_hi: EncryptedBalance,
pub available_balance: EncryptedBalance,
pub decryptable_available_balance: DecryptableBalance,
pub allow_confidential_credits: PodBool,
pub allow_non_confidential_credits: PodBool,
pub pending_balance_credit_counter: PodU64,
pub maximum_pending_balance_credit_counter: PodU64,
pub expected_pending_balance_credit_counter: PodU64,
pub actual_pending_balance_credit_counter: PodU64,
pub withheld_amount: EncryptedWithheldAmount,
}
Expand description
Confidential account state
Fields
approved: PodBool
true
if this account has been approved for use. All confidential transfer operations for
the account will fail until approval is granted.
encryption_pubkey: EncryptionPubkey
The public key associated with ElGamal encryption
pending_balance_lo: EncryptedBalance
The low 16 bits of the pending balance (encrypted by encryption_pubkey
)
pending_balance_hi: EncryptedBalance
The high 48 bits of the pending balance (encrypted by encryption_pubkey
)
available_balance: EncryptedBalance
The available balance (encrypted by encrypiton_pubkey
)
decryptable_available_balance: DecryptableBalance
The decryptable available balance
allow_confidential_credits: PodBool
If false
, the extended account rejects any incoming confidential transfers
allow_non_confidential_credits: PodBool
If false
, the base account rejects any incoming transfers
pending_balance_credit_counter: PodU64
The total number of Deposit
and Transfer
instructions that have credited
pending_balance
maximum_pending_balance_credit_counter: PodU64
The maximum number of Deposit
and Transfer
instructions that can credit
pending_balance
before the ApplyPendingBalance
instruction is executed
expected_pending_balance_credit_counter: PodU64
The expected_pending_balance_credit_counter
value that was included in the last
ApplyPendingBalance
instruction
actual_pending_balance_credit_counter: PodU64
The actual pending_balance_credit_counter
when the last ApplyPendingBalance
instruction
was executed
withheld_amount: EncryptedWithheldAmount
The withheld amount of fees. This will always be zero if fees are never enabled.
Implementations
sourceimpl ConfidentialTransferAccount
impl ConfidentialTransferAccount
sourcepub fn approved(&self) -> ProgramResult
pub fn approved(&self) -> ProgramResult
Check if a ConfidentialTransferAccount
has been approved for use
sourcepub fn closable(&self) -> ProgramResult
pub fn closable(&self) -> ProgramResult
Check if a ConfidentialTransferAccount
is in a closable state
sourcepub fn non_confidential_transfer_allowed(&self) -> ProgramResult
pub fn non_confidential_transfer_allowed(&self) -> ProgramResult
Check if a base account of a ConfidentialTransferAccount
accepts non-confidential
transfers
Trait Implementations
sourceimpl Clone for ConfidentialTransferAccount
impl Clone for ConfidentialTransferAccount
sourcefn clone(&self) -> ConfidentialTransferAccount
fn clone(&self) -> ConfidentialTransferAccount
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresourceimpl Debug for ConfidentialTransferAccount
impl Debug for ConfidentialTransferAccount
sourceimpl Default for ConfidentialTransferAccount
impl Default for ConfidentialTransferAccount
sourcefn default() -> ConfidentialTransferAccount
fn default() -> ConfidentialTransferAccount
sourceimpl Extension for ConfidentialTransferAccount
impl Extension for ConfidentialTransferAccount
sourceconst TYPE: ExtensionType = ExtensionType::ConfidentialTransferAccount
const TYPE: ExtensionType = ExtensionType::ConfidentialTransferAccount
sourceimpl PartialEq<ConfidentialTransferAccount> for ConfidentialTransferAccount
impl PartialEq<ConfidentialTransferAccount> for ConfidentialTransferAccount
sourcefn eq(&self, other: &ConfidentialTransferAccount) -> bool
fn eq(&self, other: &ConfidentialTransferAccount) -> bool
impl Copy for ConfidentialTransferAccount
impl Pod for ConfidentialTransferAccount
impl StructuralPartialEq for ConfidentialTransferAccount
Auto Trait Implementations
impl RefUnwindSafe for ConfidentialTransferAccount
impl Send for ConfidentialTransferAccount
impl Sync for ConfidentialTransferAccount
impl Unpin for ConfidentialTransferAccount
impl UnwindSafe for ConfidentialTransferAccount
Blanket Implementations
impl<T> AbiExample for T
impl<T> AbiExample for T
default fn example() -> T
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
sourceimpl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
impl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
type Bits = T
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
. Read more