Skip to content

Commit

Permalink
Rollup merge of #111186 - jmillikin:nonzero-is-positive, r=dtolnay
Browse files Browse the repository at this point in the history
Add `is_positive` method for signed non-zero integers.

ACP: rust-lang/libs-team#105
  • Loading branch information
matthiaskrgr authored May 4, 2023
2 parents 99d2b78 + a1fbb49 commit 116fc34
Showing 1 changed file with 26 additions and 0 deletions.
26 changes: 26 additions & 0 deletions core/src/num/nonzero.rs
Original file line number Diff line number Diff line change
Expand Up @@ -713,6 +713,32 @@ macro_rules! nonzero_signed_operations {
unsafe { $Uty::new_unchecked(self.get().unsigned_abs()) }
}

/// Returns `true` if `self` is positive and `false` if the
/// number is negative.
///
/// # Example
///
/// ```
/// #![feature(nonzero_negation_ops)]
///
#[doc = concat!("# use std::num::", stringify!($Ty), ";")]
/// # fn main() { test().unwrap(); }
/// # fn test() -> Option<()> {
#[doc = concat!("let pos_five = ", stringify!($Ty), "::new(5)?;")]
#[doc = concat!("let neg_five = ", stringify!($Ty), "::new(-5)?;")]
///
/// assert!(pos_five.is_positive());
/// assert!(!neg_five.is_positive());
/// # Some(())
/// # }
/// ```
#[must_use]
#[inline]
#[unstable(feature = "nonzero_negation_ops", issue = "102443")]
pub const fn is_positive(self) -> bool {
self.get().is_positive()
}

/// Returns `true` if `self` is negative and `false` if the
/// number is positive.
///
Expand Down

0 comments on commit 116fc34

Please sign in to comment.