Trait num_traits::sign::Signed
[−]
[src]
pub trait Signed: Num + Neg<Output = Self> { fn abs(&self) -> Self; fn abs_sub(&self, other: &Self) -> Self; fn signum(&self) -> Self; fn is_positive(&self) -> bool; fn is_negative(&self) -> bool; }
Useful functions for signed numbers (i.e. numbers that can be negative).
Required Methods
fn abs(&self) -> Self
Computes the absolute value.
For f32
and f64
, NaN
will be returned if the number is NaN
.
For signed integers, ::MIN
will be returned if the number is ::MIN
.
fn abs_sub(&self, other: &Self) -> Self
The positive difference of two numbers.
Returns zero
if the number is less than or equal to other
, otherwise the difference
between self
and other
is returned.
fn signum(&self) -> Self
Returns the sign of the number.
For f32
and f64
:
1.0
if the number is positive,+0.0
orINFINITY
-1.0
if the number is negative,-0.0
orNEG_INFINITY
NaN
if the number isNaN
For signed integers:
0
if the number is zero1
if the number is positive-1
if the number is negative
fn is_positive(&self) -> bool
Returns true if the number is positive and false if the number is zero or negative.
fn is_negative(&self) -> bool
Returns true if the number is negative and false if the number is zero or positive.
Implementations on Foreign Types
impl Signed for i64
[src]
impl Signed for f32
[src]
fn abs(&self) -> f32
[src]
Computes the absolute value. Returns NAN
if the number is NAN
.
fn abs_sub(&self, other: &f32) -> f32
[src]
The positive difference of two numbers. Returns 0.0
if the number is
less than or equal to other
, otherwise the difference betweenself
and other
is returned.
fn signum(&self) -> f32
[src]
Returns
1.0
if the number is positive,+0.0
orINFINITY
-1.0
if the number is negative,-0.0
orNEG_INFINITY
NAN
if the number is NaN
fn is_positive(&self) -> bool
[src]
Returns true
if the number is positive, including +0.0
and INFINITY
fn is_negative(&self) -> bool
[src]
Returns true
if the number is negative, including -0.0
and NEG_INFINITY
impl Signed for f64
[src]
fn abs(&self) -> f64
[src]
Computes the absolute value. Returns NAN
if the number is NAN
.
fn abs_sub(&self, other: &f64) -> f64
[src]
The positive difference of two numbers. Returns 0.0
if the number is
less than or equal to other
, otherwise the difference betweenself
and other
is returned.
fn signum(&self) -> f64
[src]
Returns
1.0
if the number is positive,+0.0
orINFINITY
-1.0
if the number is negative,-0.0
orNEG_INFINITY
NAN
if the number is NaN
fn is_positive(&self) -> bool
[src]
Returns true
if the number is positive, including +0.0
and INFINITY
fn is_negative(&self) -> bool
[src]
Returns true
if the number is negative, including -0.0
and NEG_INFINITY
impl<T> Signed for Wrapping<T> where
T: Signed,
Wrapping<T>: Num,
Wrapping<T>: Neg,
<Wrapping<T> as Neg>::Output == Wrapping<T>,
[src]
T: Signed,
Wrapping<T>: Num,
Wrapping<T>: Neg,
<Wrapping<T> as Neg>::Output == Wrapping<T>,