#[repr(transparent)]pub struct OptionalNonZeroPubkey(pub Pubkey);Expand description
A Pubkey that encodes None as all 0, meant to be usable as a Pod type,
similar to all NonZero* number types from the bytemuck library.
Tuple Fields§
§0: PubkeyTrait Implementations§
Source§impl BorshDeserialize for OptionalNonZeroPubkey
impl BorshDeserialize for OptionalNonZeroPubkey
fn deserialize_reader<__R: Read>(reader: &mut __R) -> Result<Self, Error>
Source§fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
Deserializes this instance from a given slice of bytes.
Updates the buffer to point at the remaining bytes.
Source§fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_slice(v: &[u8]) -> Result<Self, Error>
Deserialize this instance from a slice of bytes.
fn try_from_reader<R>(reader: &mut R) -> Result<Self, Error>where
R: Read,
Source§impl BorshSchema for OptionalNonZeroPubkey
impl BorshSchema for OptionalNonZeroPubkey
Source§fn declaration() -> Declaration
fn declaration() -> Declaration
Get the name of the type without brackets.
Source§fn add_definitions_recursively(
definitions: &mut BTreeMap<Declaration, Definition>,
)
fn add_definitions_recursively( definitions: &mut BTreeMap<Declaration, Definition>, )
Recursively, using DFS, add type definitions required for this type.
Type definition partially explains how to serialize/deserialize a type.
Source§impl Clone for OptionalNonZeroPubkey
impl Clone for OptionalNonZeroPubkey
Source§fn clone(&self) -> OptionalNonZeroPubkey
fn clone(&self) -> OptionalNonZeroPubkey
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 Debug for OptionalNonZeroPubkey
impl Debug for OptionalNonZeroPubkey
Source§impl Default for OptionalNonZeroPubkey
impl Default for OptionalNonZeroPubkey
Source§fn default() -> OptionalNonZeroPubkey
fn default() -> OptionalNonZeroPubkey
Returns the “default value” for a type. Read more
Source§impl From<OptionalNonZeroPubkey> for COption<Pubkey>
impl From<OptionalNonZeroPubkey> for COption<Pubkey>
Source§fn from(p: OptionalNonZeroPubkey) -> Self
fn from(p: OptionalNonZeroPubkey) -> Self
Converts to this type from the input type.
Source§impl From<OptionalNonZeroPubkey> for Option<Pubkey>
impl From<OptionalNonZeroPubkey> for Option<Pubkey>
Source§fn from(p: OptionalNonZeroPubkey) -> Self
fn from(p: OptionalNonZeroPubkey) -> Self
Converts to this type from the input type.
Source§impl PartialEq for OptionalNonZeroPubkey
impl PartialEq for OptionalNonZeroPubkey
impl Copy for OptionalNonZeroPubkey
impl Pod for OptionalNonZeroPubkey
impl StructuralPartialEq for OptionalNonZeroPubkey
Auto Trait Implementations§
impl Freeze for OptionalNonZeroPubkey
impl RefUnwindSafe for OptionalNonZeroPubkey
impl Send for OptionalNonZeroPubkey
impl Sync for OptionalNonZeroPubkey
impl Unpin for OptionalNonZeroPubkey
impl UnwindSafe for OptionalNonZeroPubkey
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,
Source§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: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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