Trait solana_zk_token_sdk::zk_token_elgamal::pod::Zeroable

source ·
pub unsafe trait Zeroable: Sized {
    // Provided method
    fn zeroed() -> Self { ... }
}
Expand description

Trait for types that can be safely created with zeroed.

An all-zeroes value may or may not be the same value as the Default value of the type.

§Safety

  • Your type must be inhabited (eg: no Infallible).
  • Your type must be allowed to be an “all zeroes” bit pattern (eg: no NonNull<T>).

§Features

Some impls are feature gated due to the MSRV policy:

  • MaybeUninit<T> was not available in 1.34.0, but is available under the zeroable_maybe_uninit feature flag.
  • Atomic* types require Rust 1.60.0 or later to work on certain platforms, but is available under the zeroable_atomics feature flag.
  • [T; N] for arbitrary N requires the min_const_generics feature flag.

Provided Methods§

source

fn zeroed() -> Self

Calls zeroed.

This is a trait method so that you can write MyType::zeroed() in your code. It is a contract of this trait that if you implement it on your type you must not override this method.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl Zeroable for bool

source§

impl Zeroable for char

source§

impl Zeroable for f32

source§

impl Zeroable for f64

source§

impl Zeroable for i8

source§

impl Zeroable for i16

source§

impl Zeroable for i32

source§

impl Zeroable for i64

source§

impl Zeroable for i128

source§

impl Zeroable for isize

source§

impl Zeroable for *const str

source§

impl Zeroable for *mut str

source§

impl Zeroable for u8

source§

impl Zeroable for u16

source§

impl Zeroable for u32

source§

impl Zeroable for u64

source§

impl Zeroable for u128

source§

impl Zeroable for ()

source§

impl Zeroable for usize

source§

impl Zeroable for __m128

source§

impl Zeroable for __m128d

source§

impl Zeroable for __m128i

source§

impl Zeroable for __m256

source§

impl Zeroable for __m256d

source§

impl Zeroable for __m256i

source§

impl Zeroable for PhantomPinned

source§

impl Zeroable for PodG1

source§

impl Zeroable for PodG2

source§

impl Zeroable for Hash

source§

impl Zeroable for Pubkey

source§

impl Zeroable for Ed25519SignatureOffsets

source§

impl<A> Zeroable for (A,)
where A: Zeroable,

source§

impl<A, B> Zeroable for (A, B)
where A: Zeroable, B: Zeroable,

source§

impl<A, B, C> Zeroable for (A, B, C)
where A: Zeroable, B: Zeroable, C: Zeroable,

source§

impl<A, B, C, D> Zeroable for (A, B, C, D)
where A: Zeroable, B: Zeroable, C: Zeroable, D: Zeroable,

source§

impl<A, B, C, D, E> Zeroable for (A, B, C, D, E)
where A: Zeroable, B: Zeroable, C: Zeroable, D: Zeroable, E: Zeroable,

source§

impl<A, B, C, D, E, F> Zeroable for (A, B, C, D, E, F)
where A: Zeroable, B: Zeroable, C: Zeroable, D: Zeroable, E: Zeroable, F: Zeroable,

source§

impl<A, B, C, D, E, F, G> Zeroable for (A, B, C, D, E, F, G)
where A: Zeroable, B: Zeroable, C: Zeroable, D: Zeroable, E: Zeroable, F: Zeroable, G: Zeroable,

source§

impl<A, B, C, D, E, F, G, H> Zeroable for (A, B, C, D, E, F, G, H)
where A: Zeroable, B: Zeroable, C: Zeroable, D: Zeroable, E: Zeroable, F: Zeroable, G: Zeroable, H: Zeroable,

source§

impl<T> Zeroable for Option<T>

source§

impl<T> Zeroable for [T; 0]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 1]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 2]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 3]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 4]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 5]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 6]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 7]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 8]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 9]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 10]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 11]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 12]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 13]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 14]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 15]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 16]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 17]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 18]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 19]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 20]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 21]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 22]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 23]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 24]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 25]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 26]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 27]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 28]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 29]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 30]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 31]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 32]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 48]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 64]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 96]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 128]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 256]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 512]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 1024]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 2048]
where T: Zeroable,

source§

impl<T> Zeroable for [T; 4096]
where T: Zeroable,

source§

impl<T> Zeroable for *const [T]

source§

impl<T> Zeroable for *const T

source§

impl<T> Zeroable for *mut [T]

source§

impl<T> Zeroable for *mut T

source§

impl<T> Zeroable for Cell<T>
where T: Zeroable,

source§

impl<T> Zeroable for UnsafeCell<T>
where T: Zeroable,

source§

impl<T> Zeroable for Reverse<T>
where T: Zeroable,

source§

impl<T> Zeroable for PhantomData<T>
where T: ?Sized,

source§

impl<T> Zeroable for ManuallyDrop<T>
where T: Zeroable,

source§

impl<T> Zeroable for Wrapping<T>
where T: Zeroable,

Implementors§

source§

impl Zeroable for PodEdwardsPoint

source§

impl Zeroable for PodRistrettoPoint

source§

impl Zeroable for PodScalar

source§

impl Zeroable for BatchedGroupedCiphertext2HandlesValidityProofContext

source§

impl Zeroable for BatchedGroupedCiphertext2HandlesValidityProofData

source§

impl Zeroable for BatchedRangeProofU64Data

source§

impl Zeroable for BatchedRangeProofU128Data

source§

impl Zeroable for BatchedRangeProofU256Data

source§

impl Zeroable for BatchedRangeProofContext

source§

impl Zeroable for CiphertextCiphertextEqualityProofContext

source§

impl Zeroable for CiphertextCiphertextEqualityProofData

source§

impl Zeroable for CiphertextCommitmentEqualityProofContext

source§

impl Zeroable for CiphertextCommitmentEqualityProofData

source§

impl Zeroable for FeeSigmaProofContext

source§

impl Zeroable for FeeSigmaProofData

source§

impl Zeroable for GroupedCiphertext2HandlesValidityProofContext

source§

impl Zeroable for GroupedCiphertext2HandlesValidityProofData

source§

impl Zeroable for PubkeyValidityData

source§

impl Zeroable for PubkeyValidityProofContext

source§

impl Zeroable for RangeProofContext

source§

impl Zeroable for RangeProofU64Data

source§

impl Zeroable for TransferData

source§

impl Zeroable for TransferProofContext

source§

impl Zeroable for TransferPubkeys

source§

impl Zeroable for TransferWithFeeData

source§

impl Zeroable for TransferWithFeeProofContext

source§

impl Zeroable for TransferWithFeePubkeys

source§

impl Zeroable for WithdrawData

source§

impl Zeroable for WithdrawProof

source§

impl Zeroable for WithdrawProofContext

source§

impl Zeroable for ZeroBalanceProofContext

source§

impl Zeroable for ZeroBalanceProofData

source§

impl Zeroable for ProofContextStateMeta

source§

impl Zeroable for AeCiphertext

source§

impl Zeroable for BatchedGroupedCiphertext2HandlesValidityProof

source§

impl Zeroable for CiphertextCiphertextEqualityProof

source§

impl Zeroable for CiphertextCommitmentEqualityProof

source§

impl Zeroable for CompressedRistretto

source§

impl Zeroable for DecryptHandle

source§

impl Zeroable for ElGamalCiphertext

source§

impl Zeroable for ElGamalPubkey

source§

impl Zeroable for FeeEncryption

source§

impl Zeroable for FeeParameters

source§

impl Zeroable for FeeSigmaProof

source§

impl Zeroable for GroupedCiphertext2HandlesValidityProof

source§

impl Zeroable for GroupedElGamalCiphertext2Handles

source§

impl Zeroable for GroupedElGamalCiphertext3Handles

source§

impl Zeroable for PedersenCommitment

source§

impl Zeroable for PodProofType

source§

impl Zeroable for PodU16

source§

impl Zeroable for PodU64

source§

impl Zeroable for PubkeyValidityProof

source§

impl Zeroable for RangeProofU64

source§

impl Zeroable for RangeProofU128

source§

impl Zeroable for RangeProofU256

source§

impl Zeroable for TransferAmountCiphertext

source§

impl Zeroable for ZeroBalanceProof

source§

impl<T: Pod> Zeroable for ProofContextState<T>