Trait conv::ConvUtil
[−]
[src]
pub trait ConvUtil { fn approx_as<Dst>(self) -> Result<Dst, Self::Err> where Self: Sized + ApproxInto<Dst> { ... } fn approx_as_by<Dst, Scheme>(self) -> Result<Dst, Self::Err> where Self: Sized + ApproxInto<Dst, Scheme>, Scheme: ApproxScheme { ... } fn into_as<Dst>(self) -> Dst where Self: Sized + Into<Dst> { ... } fn try_as<Dst>(self) -> Result<Dst, Self::Err> where Self: Sized + TryInto<Dst> { ... } fn value_as<Dst>(self) -> Result<Dst, Self::Err> where Self: Sized + ValueInto<Dst> { ... } }
This extension trait exists to simplify using various conversions.
If there is more than one implementation for a given type/trait pair, a simple call to *_into
may not be uniquely resolvable. Due to the position of the type parameter (on the trait itself), it is cumbersome to specify the destination type. A similar problem exists for approximation schemes.
See also the ConvAsUtil
trait.
Note: There appears to be a bug in
rustdoc
's output. This trait is implemented for all types, though the methods are only available for types where the appropriate conversions are defined.
Provided Methods
fn approx_as<Dst>(self) -> Result<Dst, Self::Err> where Self: Sized + ApproxInto<Dst>
Approximate the subject to a given type with the default scheme.
fn approx_as_by<Dst, Scheme>(self) -> Result<Dst, Self::Err> where Self: Sized + ApproxInto<Dst, Scheme>, Scheme: ApproxScheme
Approximate the subject to a given type with a specific scheme.
fn into_as<Dst>(self) -> Dst where Self: Sized + Into<Dst>
Convert the subject to a given type.
fn try_as<Dst>(self) -> Result<Dst, Self::Err> where Self: Sized + TryInto<Dst>
Attempt to convert the subject to a given type.
fn value_as<Dst>(self) -> Result<Dst, Self::Err> where Self: Sized + ValueInto<Dst>
Attempt a value conversion of the subject to a given type.
Implementors
impl<T> ConvUtil for T