diff --git a/src/libstd/num/mod.rs b/src/libstd/num/mod.rs index 9d0b53f945fae..d036e84712084 100644 --- a/src/libstd/num/mod.rs +++ b/src/libstd/num/mod.rs @@ -159,6 +159,7 @@ pub fn abs_sub(x: T, y: T) -> T { /// - `-1` if the number is negative #[inline(always)] pub fn signum(value: T) -> T { value.signum() } +/// A trait for values which cannot be negative pub trait Unsigned: Num {} /// A collection of rounding operations. @@ -205,6 +206,7 @@ pub fn pow>(mut base: T, mut exp: uint) -> T { } } +/// Numbers which have upper and lower bounds pub trait Bounded { // FIXME (#5527): These should be associated constants fn min_value() -> Self; @@ -1046,10 +1048,12 @@ impl_num_cast!(int, to_int) impl_num_cast!(f32, to_f32) impl_num_cast!(f64, to_f64) +/// A generic trait for converting a value to a string with a radix (base) pub trait ToStrRadix { fn to_str_radix(&self, radix: uint) -> ~str; } +/// A generic trait for converting a string with a radix (base) to a value pub trait FromStrRadix { fn from_str_radix(str: &str, radix: uint) -> Option; }