Trait mutils::internal::FromClamped[][src]

pub trait FromClamped<N: Num> {
    fn from_clamped(n: N) -> Self;
}

It's useful to convert from a higher precision numerical type, to a lower one. i.e. u64 to u32.

When this happens you can lose data. There are multiple ways to deal with this. One approach is to clamp within the target range.

This isn't just about moving to the same type with less bits. It's for any change where you end up with less data. Such as moving between signed and unsigned. i.e. i32 -> u32, and u32 -> i32.

Required methods

fn from_clamped(n: N) -> Self[src]

Returns the value in the new type, but clamped.

Loading content...

Implementations on Foreign Types

impl FromClamped<i16> for i8[src]

impl FromClamped<i32> for i8[src]

impl FromClamped<i64> for i8[src]

impl FromClamped<u8> for i8[src]

impl FromClamped<u16> for i8[src]

impl FromClamped<u32> for i8[src]

impl FromClamped<u64> for i8[src]

impl FromClamped<f32> for i8[src]

impl FromClamped<f64> for i8[src]

impl FromClamped<i8> for u8[src]

impl FromClamped<i16> for u8[src]

impl FromClamped<i32> for u8[src]

impl FromClamped<i64> for u8[src]

impl FromClamped<u16> for u8[src]

impl FromClamped<u32> for u8[src]

impl FromClamped<u64> for u8[src]

impl FromClamped<f32> for u8[src]

impl FromClamped<f64> for u8[src]

impl FromClamped<i32> for i16[src]

impl FromClamped<i64> for i16[src]

impl FromClamped<u16> for i16[src]

impl FromClamped<u32> for i16[src]

impl FromClamped<u64> for i16[src]

impl FromClamped<f32> for i16[src]

impl FromClamped<f64> for i16[src]

impl FromClamped<i16> for u16[src]

impl FromClamped<i32> for u16[src]

impl FromClamped<i64> for u16[src]

impl FromClamped<u32> for u16[src]

impl FromClamped<u64> for u16[src]

impl FromClamped<f32> for u16[src]

impl FromClamped<f64> for u16[src]

impl FromClamped<i64> for i32[src]

impl FromClamped<u32> for i32[src]

impl FromClamped<u64> for i32[src]

impl FromClamped<f32> for i32[src]

impl FromClamped<f64> for i32[src]

impl FromClamped<i32> for u32[src]

impl FromClamped<i64> for u32[src]

impl FromClamped<u64> for u32[src]

impl FromClamped<f32> for u32[src]

impl FromClamped<f64> for u32[src]

impl FromClamped<u64> for i64[src]

impl FromClamped<f32> for i64[src]

impl FromClamped<f64> for i64[src]

impl FromClamped<i64> for u64[src]

impl FromClamped<f32> for u64[src]

impl FromClamped<f64> for u64[src]

impl FromClamped<i8> for usize[src]

impl FromClamped<i16> for usize[src]

impl FromClamped<i32> for usize[src]

impl FromClamped<i64> for usize[src]

impl FromClamped<u16> for usize[src]

impl FromClamped<u32> for usize[src]

impl FromClamped<u64> for usize[src]

impl FromClamped<f32> for usize[src]

impl FromClamped<f64> for usize[src]

impl FromClamped<i16> for f32[src]

impl FromClamped<i32> for f32[src]

impl FromClamped<i64> for f32[src]

impl FromClamped<u32> for f32[src]

impl FromClamped<u64> for f32[src]

Loading content...

Implementors

Loading content...