Trait conv::ValueFrom
[−]
[src]
pub trait ValueFrom<Src>: Sized { type Err: Error; fn value_from(src: Src) -> Result<Self, Self::Err>; }
This trait is used to perform an exact, value-preserving conversion.
Where possible, prefer implementing this trait over ValueInto, but prefer using ValueInto for generic constraints.
Details
Implementations of this trait should be reflexive, associative and commutative (in the absence of conversion errors). That is, all possible cycles of ValueFrom conversions (for which each "step" has a defined implementation) should produce the same result, with a given value either being "round-tripped" exactly, or an error being produced.
Associated Types
Required Methods
fn value_from(src: Src) -> Result<Self, Self::Err>
Convert the given value into an exactly equivalent representation.
Implementors
impl ValueFrom<i8> for i16impl ValueFrom<i8> for i32impl ValueFrom<i8> for i64impl ValueFrom<i8> for u8impl ValueFrom<i8> for u16impl ValueFrom<i8> for u32impl ValueFrom<i8> for u64impl ValueFrom<i8> for isizeimpl ValueFrom<i8> for usizeimpl ValueFrom<i16> for i8impl ValueFrom<i16> for i32impl ValueFrom<i16> for i64impl ValueFrom<i16> for u8impl ValueFrom<i16> for u16impl ValueFrom<i16> for u32impl ValueFrom<i16> for u64impl ValueFrom<i16> for isizeimpl ValueFrom<i16> for usizeimpl ValueFrom<i32> for i8impl ValueFrom<i32> for i16impl ValueFrom<i32> for i64impl ValueFrom<i32> for u8impl ValueFrom<i32> for u16impl ValueFrom<i32> for u32impl ValueFrom<i32> for u64impl ValueFrom<i64> for i8impl ValueFrom<i64> for i16impl ValueFrom<i64> for i32impl ValueFrom<i64> for u8impl ValueFrom<i64> for u16impl ValueFrom<i64> for u32impl ValueFrom<i64> for u64impl ValueFrom<i32> for isizeimpl ValueFrom<i32> for usizeimpl ValueFrom<i64> for isizeimpl ValueFrom<i64> for usizeimpl ValueFrom<u8> for i8impl ValueFrom<u8> for i16impl ValueFrom<u8> for i32impl ValueFrom<u8> for i64impl ValueFrom<u8> for u16impl ValueFrom<u8> for u32impl ValueFrom<u8> for u64impl ValueFrom<u8> for isizeimpl ValueFrom<u8> for usizeimpl ValueFrom<u16> for i8impl ValueFrom<u16> for i16impl ValueFrom<u16> for i32impl ValueFrom<u16> for i64impl ValueFrom<u16> for u8impl ValueFrom<u16> for u32impl ValueFrom<u16> for u64impl ValueFrom<u16> for isizeimpl ValueFrom<u16> for usizeimpl ValueFrom<u32> for i8impl ValueFrom<u32> for i16impl ValueFrom<u32> for i32impl ValueFrom<u32> for i64impl ValueFrom<u32> for u8impl ValueFrom<u32> for u16impl ValueFrom<u32> for u64impl ValueFrom<u64> for i8impl ValueFrom<u64> for i16impl ValueFrom<u64> for i32impl ValueFrom<u64> for i64impl ValueFrom<u64> for u8impl ValueFrom<u64> for u16impl ValueFrom<u64> for u32impl ValueFrom<u32> for isizeimpl ValueFrom<u32> for usizeimpl ValueFrom<u64> for isizeimpl ValueFrom<u64> for usizeimpl ValueFrom<isize> for i8impl ValueFrom<isize> for i16impl ValueFrom<isize> for i32impl ValueFrom<isize> for i64impl ValueFrom<isize> for u8impl ValueFrom<isize> for u16impl ValueFrom<isize> for u32impl ValueFrom<isize> for u64impl ValueFrom<isize> for usizeimpl ValueFrom<usize> for i8impl ValueFrom<usize> for i16impl ValueFrom<usize> for i32impl ValueFrom<usize> for i64impl ValueFrom<usize> for u8impl ValueFrom<usize> for u16impl ValueFrom<usize> for u32impl ValueFrom<usize> for u64impl ValueFrom<usize> for isizeimpl ValueFrom<f32> for f64impl ValueFrom<i8> for f32impl ValueFrom<i8> for f64impl ValueFrom<i16> for f32impl ValueFrom<i16> for f64impl ValueFrom<i32> for f32impl ValueFrom<i32> for f64impl ValueFrom<i64> for f32impl ValueFrom<i64> for f64impl ValueFrom<u8> for f32impl ValueFrom<u8> for f64impl ValueFrom<u16> for f32impl ValueFrom<u16> for f64impl ValueFrom<u32> for f32impl ValueFrom<u32> for f64impl ValueFrom<u64> for f32impl ValueFrom<u64> for f64impl ValueFrom<isize> for f32impl ValueFrom<isize> for f64impl ValueFrom<usize> for f32impl ValueFrom<usize> for f64impl<Src> ValueFrom<Src> for Src