Struct spl_token_2022::extension::confidential_transfer::instruction::batched_range_proof::BatchedRangeProofContext
source · #[repr(C)]pub struct BatchedRangeProofContext {
pub commitments: [PedersenCommitment; 8],
pub bit_lengths: [u8; 8],
}
Expand description
The context data needed to verify a range-proof for a Pedersen committed value.
The context data is shared by all VerifyBatchedRangeProof{N}
instructions.
Fields§
§commitments: [PedersenCommitment; 8]
§bit_lengths: [u8; 8]
Trait Implementations§
source§impl Clone for BatchedRangeProofContext
impl Clone for BatchedRangeProofContext
source§fn clone(&self) -> BatchedRangeProofContext
fn clone(&self) -> BatchedRangeProofContext
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl TryInto<(Vec<PedersenCommitment>, Vec<usize>)> for BatchedRangeProofContext
impl TryInto<(Vec<PedersenCommitment>, Vec<usize>)> for BatchedRangeProofContext
§type Error = ProofVerificationError
type Error = ProofVerificationError
The type returned in the event of a conversion error.
source§fn try_into(
self,
) -> Result<(Vec<PedersenCommitment>, Vec<usize>), <BatchedRangeProofContext as TryInto<(Vec<PedersenCommitment>, Vec<usize>)>>::Error>
fn try_into( self, ) -> Result<(Vec<PedersenCommitment>, Vec<usize>), <BatchedRangeProofContext as TryInto<(Vec<PedersenCommitment>, Vec<usize>)>>::Error>
Performs the conversion.
source§impl ZkProofData<BatchedRangeProofContext> for BatchedRangeProofU128Data
impl ZkProofData<BatchedRangeProofContext> for BatchedRangeProofU128Data
const PROOF_TYPE: ProofType = ProofType::BatchedRangeProofU128
fn context_data(&self) -> &BatchedRangeProofContext
fn verify_proof(&self) -> Result<(), ProofVerificationError>
source§impl ZkProofData<BatchedRangeProofContext> for BatchedRangeProofU256Data
impl ZkProofData<BatchedRangeProofContext> for BatchedRangeProofU256Data
const PROOF_TYPE: ProofType = ProofType::BatchedRangeProofU256
fn context_data(&self) -> &BatchedRangeProofContext
fn verify_proof(&self) -> Result<(), ProofVerificationError>
source§impl ZkProofData<BatchedRangeProofContext> for BatchedRangeProofU64Data
impl ZkProofData<BatchedRangeProofContext> for BatchedRangeProofU64Data
const PROOF_TYPE: ProofType = ProofType::BatchedRangeProofU64
fn context_data(&self) -> &BatchedRangeProofContext
fn verify_proof(&self) -> Result<(), ProofVerificationError>
impl Copy for BatchedRangeProofContext
impl Pod for BatchedRangeProofContext
Auto Trait Implementations§
impl Freeze for BatchedRangeProofContext
impl RefUnwindSafe for BatchedRangeProofContext
impl Send for BatchedRangeProofContext
impl Sync for BatchedRangeProofContext
impl Unpin for BatchedRangeProofContext
impl UnwindSafe for BatchedRangeProofContext
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
source§impl<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
.source§fn 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
.source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more