blob: e88b8fc66e9badf523697120a8d2a3ffd0ebbbac [file] [log] [blame]
pub trait ToF64 {
fn to_f64(&self) -> f64;
}
macro_rules! impl_to_f64 {
(for $($t:ty)*) => ($(
impl ToF64 for $t {
fn to_f64(&self) -> f64 {
*self as f64
}
}
)*)
}
impl_to_f64!(for usize u8 u16 u32 u64 isize i8 i16 i32 i64 f32 f64);
pub trait Unsigned {}
macro_rules! impl_unsigned {
(for $($t:ty)*) => ($(
impl Unsigned for $t {}
)*)
}
impl_unsigned!(for usize u8 u16 u32 u64);
pub trait Signed {}
macro_rules! impl_unsigned {
(for $($t:ty)*) => ($(
impl Signed for $t {}
)*)
}
impl_unsigned!(for isize i8 i16 i32 i64);