#[repr(C)]pub struct CompressibleExtension {
pub decimals_option: u8,
pub decimals: u8,
pub compression_only: bool,
pub is_ata: u8,
pub info: CompressionInfo,
}Expand description
Compressible extension for token accounts. This extension contains compression configuration and timing data.
Fields§
§decimals_option: u8Option discriminator for decimals (0 = None, 1 = Some)
decimals: u8Token decimals (only valid when decimals_option == 1)
compression_only: boolWhether this account is compression-only (cannot decompress)
is_ata: u8Whether the source account is an ATA (1 = ATA, 0 = regular account) Used during compress_and_close to set is_ata in CompressedOnlyExtension
info: CompressionInfoCompression configuration and timing data
Implementations§
Trait Implementations§
Source§impl BorshDeserialize for CompressibleExtension
impl BorshDeserialize for CompressibleExtension
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 Clone for CompressibleExtension
impl Clone for CompressibleExtension
Source§fn clone(&self) -> CompressibleExtension
fn clone(&self) -> CompressibleExtension
Returns a duplicate 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 CompressibleExtension
impl Debug for CompressibleExtension
Source§impl Hash for CompressibleExtension
impl Hash for CompressibleExtension
Source§impl PartialEq for CompressibleExtension
impl PartialEq for CompressibleExtension
Source§impl<'a> ZeroCopyAt<'a> for CompressibleExtension
impl<'a> ZeroCopyAt<'a> for CompressibleExtension
type ZeroCopyAt = ZCompressibleExtension<'a>
fn zero_copy_at( __remaining_bytes: &'a [u8], ) -> Result<(Self::ZeroCopyAt, &'a [u8]), ZeroCopyError>
Source§impl<'a> ZeroCopyAtMut<'a> for CompressibleExtension
impl<'a> ZeroCopyAtMut<'a> for CompressibleExtension
type ZeroCopyAtMut = ZCompressibleExtensionMut<'a>
fn zero_copy_at_mut( __remaining_bytes: &'a mut [u8], ) -> Result<(Self::ZeroCopyAtMut, &'a mut [u8]), ZeroCopyError>
Source§impl<'a> ZeroCopyNew<'a> for CompressibleExtension
impl<'a> ZeroCopyNew<'a> for CompressibleExtension
Source§type ZeroCopyConfig = CompressibleExtensionConfig
type ZeroCopyConfig = CompressibleExtensionConfig
Configuration type needed to initialize this type
Source§type Output = <CompressibleExtension as ZeroCopyAtMut<'a>>::ZeroCopyAtMut
type Output = <CompressibleExtension as ZeroCopyAtMut<'a>>::ZeroCopyAtMut
Output type - the mutable zero-copy view of this type
Source§fn byte_len(config: &Self::ZeroCopyConfig) -> Result<usize, ZeroCopyError>
fn byte_len(config: &Self::ZeroCopyConfig) -> Result<usize, ZeroCopyError>
Calculate the byte length needed for this type with the given configuration Read more
Source§fn new_zero_copy(
__remaining_bytes: &'a mut [u8],
config: Self::ZeroCopyConfig,
) -> Result<(Self::Output, &'a mut [u8]), ZeroCopyError>
fn new_zero_copy( __remaining_bytes: &'a mut [u8], config: Self::ZeroCopyConfig, ) -> Result<(Self::Output, &'a mut [u8]), ZeroCopyError>
Initialize this type in a mutable byte slice with the given configuration Read more
Source§impl ZeroCopyStructInner for CompressibleExtension
impl ZeroCopyStructInner for CompressibleExtension
type ZeroCopyInner = ZCompressibleExtension<'static>
Source§impl ZeroCopyStructInnerMut for CompressibleExtension
impl ZeroCopyStructInnerMut for CompressibleExtension
type ZeroCopyInnerMut = ZCompressibleExtensionMut<'static>
impl Copy for CompressibleExtension
impl Eq for CompressibleExtension
impl StructuralPartialEq for CompressibleExtension
Auto Trait Implementations§
impl Freeze for CompressibleExtension
impl RefUnwindSafe for CompressibleExtension
impl Send for CompressibleExtension
impl Sync for CompressibleExtension
impl Unpin for CompressibleExtension
impl UnwindSafe for CompressibleExtension
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> HashToFieldSize for Twhere
T: BorshSerialize,
impl<T> HashToFieldSize for Twhere
T: BorshSerialize,
fn hash_to_field_size(&self) -> Result<[u8; 32], HasherError>
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