Trait num_traits::ops::checked::CheckedNeg [−][src]
pub trait CheckedNeg: Sized { fn checked_neg(&self) -> Option<Self>; }
Performs negation that returns None
if the result can't be represented.
Required Methods
fn checked_neg(&self) -> Option<Self>
Negates a number, returning None
for results that can't be represented, like signed MIN
values that can't be positive, or non-zero unsigned values that can't be negative.
Examples
use num_traits::CheckedNeg; use std::i32::MIN; assert_eq!(CheckedNeg::checked_neg(&1_i32), Some(-1)); assert_eq!(CheckedNeg::checked_neg(&-1_i32), Some(1)); assert_eq!(CheckedNeg::checked_neg(&MIN), None); assert_eq!(CheckedNeg::checked_neg(&0_u32), Some(0)); assert_eq!(CheckedNeg::checked_neg(&1_u32), None);
Implementors
impl CheckedNeg for u8
impl CheckedNeg for u16
impl CheckedNeg for u32
impl CheckedNeg for u64
impl CheckedNeg for usize
impl CheckedNeg for u128
impl CheckedNeg for i8
impl CheckedNeg for i16
impl CheckedNeg for i32
impl CheckedNeg for i64
impl CheckedNeg for isize
impl CheckedNeg for i128