#[repr(C)]pub struct CloseAccountData {
pub pubkey: ElGamalPubkey,
pub ciphertext: ElGamalCiphertext,
pub proof: CloseAccountProof,
}
Expand description
This struct includes the cryptographic proof and the account data information needed to verify the proof
- The pre-instruction should call CloseAccountData::verify_proof(&self)
- The actual program should check that
balance
is consistent with what is currently stored in the confidential token account
Fields
pubkey: ElGamalPubkey
The source account ElGamal pubkey
ciphertext: ElGamalCiphertext
The source account available balance in encrypted form
proof: CloseAccountProof
Proof that the source account available balance is zero
Implementations
sourceimpl CloseAccountData
impl CloseAccountData
pub fn new(
keypair: &ElGamalKeypair,
ciphertext: &ElGamalCiphertext
) -> Result<Self, ProofError>
Trait Implementations
sourceimpl Clone for CloseAccountData
impl Clone for CloseAccountData
sourcefn clone(&self) -> CloseAccountData
fn clone(&self) -> CloseAccountData
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 Verifiable for CloseAccountData
impl Verifiable for CloseAccountData
fn verify(&self) -> Result<(), ProofError>
impl Copy for CloseAccountData
impl Pod for CloseAccountData
Auto Trait Implementations
impl RefUnwindSafe for CloseAccountData
impl Send for CloseAccountData
impl Sync for CloseAccountData
impl Unpin for CloseAccountData
impl UnwindSafe for CloseAccountData
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
sourceimpl<T> CheckedBitPattern for T where
T: AnyBitPattern,
impl<T> CheckedBitPattern for T where
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
sourcefn is_valid_bit_pattern(_bits: &T) -> bool
fn is_valid_bit_pattern(_bits: &T) -> bool
If this function returns true, then it must be valid to reinterpret bits
as &Self
.
impl<T> Pointable for T
impl<T> Pointable for T
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
🔬 This is a nightly-only experimental API. (
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more