#[repr(transparent)]pub struct PodI16(pub [u8; 2]);Expand description
An alignment-1 wrapper around i16 stored as [u8; 2].
Enables safe zero-copy access inside #[repr(C)] account structs.
Tuple Fields§
§0: [u8; 2]Implementations§
Source§impl PodI16
impl PodI16
Sourcepub fn checked_add(self, rhs: impl Into<PodI16>) -> Option<PodI16>
pub fn checked_add(self, rhs: impl Into<PodI16>) -> Option<PodI16>
Checked addition. Returns None on overflow.
Sourcepub fn checked_sub(self, rhs: impl Into<PodI16>) -> Option<PodI16>
pub fn checked_sub(self, rhs: impl Into<PodI16>) -> Option<PodI16>
Checked subtraction. Returns None on underflow.
Sourcepub fn checked_mul(self, rhs: impl Into<PodI16>) -> Option<PodI16>
pub fn checked_mul(self, rhs: impl Into<PodI16>) -> Option<PodI16>
Checked multiplication. Returns None on overflow.
Sourcepub fn checked_div(self, rhs: impl Into<PodI16>) -> Option<PodI16>
pub fn checked_div(self, rhs: impl Into<PodI16>) -> Option<PodI16>
Checked division. Returns None if rhs is zero.
Sourcepub fn saturating_add(self, rhs: impl Into<PodI16>) -> PodI16
pub fn saturating_add(self, rhs: impl Into<PodI16>) -> PodI16
Saturating addition. Clamps at the numeric bounds instead of overflowing.
Sourcepub fn saturating_sub(self, rhs: impl Into<PodI16>) -> PodI16
pub fn saturating_sub(self, rhs: impl Into<PodI16>) -> PodI16
Saturating subtraction. Clamps at the numeric bound instead of underflowing.
Sourcepub fn saturating_mul(self, rhs: impl Into<PodI16>) -> PodI16
pub fn saturating_mul(self, rhs: impl Into<PodI16>) -> PodI16
Saturating multiplication. Clamps at the numeric bounds instead of overflowing.
Trait Implementations§
Source§impl AddAssign<i16> for PodI16
impl AddAssign<i16> for PodI16
Source§fn add_assign(&mut self, rhs: i16)
fn add_assign(&mut self, rhs: i16)
Performs the
+= operation. Read moreSource§impl AddAssign for PodI16
impl AddAssign for PodI16
Source§fn add_assign(&mut self, rhs: PodI16)
fn add_assign(&mut self, rhs: PodI16)
Performs the
+= operation. Read moreSource§impl BitAndAssign<i16> for PodI16
impl BitAndAssign<i16> for PodI16
Source§fn bitand_assign(&mut self, rhs: i16)
fn bitand_assign(&mut self, rhs: i16)
Performs the
&= operation. Read moreSource§impl BitAndAssign for PodI16
impl BitAndAssign for PodI16
Source§fn bitand_assign(&mut self, rhs: PodI16)
fn bitand_assign(&mut self, rhs: PodI16)
Performs the
&= operation. Read moreSource§impl BitOrAssign<i16> for PodI16
impl BitOrAssign<i16> for PodI16
Source§fn bitor_assign(&mut self, rhs: i16)
fn bitor_assign(&mut self, rhs: i16)
Performs the
|= operation. Read moreSource§impl BitOrAssign for PodI16
impl BitOrAssign for PodI16
Source§fn bitor_assign(&mut self, rhs: PodI16)
fn bitor_assign(&mut self, rhs: PodI16)
Performs the
|= operation. Read moreSource§impl BitXorAssign<i16> for PodI16
impl BitXorAssign<i16> for PodI16
Source§fn bitxor_assign(&mut self, rhs: i16)
fn bitxor_assign(&mut self, rhs: i16)
Performs the
^= operation. Read moreSource§impl BitXorAssign for PodI16
impl BitXorAssign for PodI16
Source§fn bitxor_assign(&mut self, rhs: PodI16)
fn bitxor_assign(&mut self, rhs: PodI16)
Performs the
^= operation. Read moreSource§impl DivAssign<i16> for PodI16
impl DivAssign<i16> for PodI16
Source§fn div_assign(&mut self, rhs: i16)
fn div_assign(&mut self, rhs: i16)
Performs the
/= operation. Read moreSource§impl DivAssign for PodI16
impl DivAssign for PodI16
Source§fn div_assign(&mut self, rhs: PodI16)
fn div_assign(&mut self, rhs: PodI16)
Performs the
/= operation. Read moreSource§impl MulAssign<i16> for PodI16
impl MulAssign<i16> for PodI16
Source§fn mul_assign(&mut self, rhs: i16)
fn mul_assign(&mut self, rhs: i16)
Performs the
*= operation. Read moreSource§impl MulAssign for PodI16
impl MulAssign for PodI16
Source§fn mul_assign(&mut self, rhs: PodI16)
fn mul_assign(&mut self, rhs: PodI16)
Performs the
*= operation. Read moreSource§impl Ord for PodI16
impl Ord for PodI16
Source§impl PartialOrd<i16> for PodI16
impl PartialOrd<i16> for PodI16
Source§impl PartialOrd for PodI16
impl PartialOrd for PodI16
Source§impl RemAssign<i16> for PodI16
impl RemAssign<i16> for PodI16
Source§fn rem_assign(&mut self, rhs: i16)
fn rem_assign(&mut self, rhs: i16)
Performs the
%= operation. Read moreSource§impl RemAssign for PodI16
impl RemAssign for PodI16
Source§fn rem_assign(&mut self, rhs: PodI16)
fn rem_assign(&mut self, rhs: PodI16)
Performs the
%= operation. Read moreSource§impl ShlAssign<u32> for PodI16
impl ShlAssign<u32> for PodI16
Source§fn shl_assign(&mut self, rhs: u32)
fn shl_assign(&mut self, rhs: u32)
Performs the
<<= operation. Read moreSource§impl ShrAssign<u32> for PodI16
impl ShrAssign<u32> for PodI16
Source§fn shr_assign(&mut self, rhs: u32)
fn shr_assign(&mut self, rhs: u32)
Performs the
>>= operation. Read moreSource§impl SubAssign<i16> for PodI16
impl SubAssign<i16> for PodI16
Source§fn sub_assign(&mut self, rhs: i16)
fn sub_assign(&mut self, rhs: i16)
Performs the
-= operation. Read moreSource§impl SubAssign for PodI16
impl SubAssign for PodI16
Source§fn sub_assign(&mut self, rhs: PodI16)
fn sub_assign(&mut self, rhs: PodI16)
Performs the
-= operation. Read moreimpl Copy for PodI16
impl Eq for PodI16
impl Pod for PodI16
impl StructuralPartialEq for PodI16
Auto Trait Implementations§
impl Freeze for PodI16
impl RefUnwindSafe for PodI16
impl Send for PodI16
impl Sync for PodI16
impl Unpin for PodI16
impl UnsafeUnpin for PodI16
impl UnwindSafe for PodI16
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.