Implement From<bool>
for f32, f64
This commit is contained in:
parent
16990de53e
commit
b134d1108f
@ -168,6 +168,26 @@ macro_rules! impl_from_bool {
|
|||||||
// Float -> Float
|
// Float -> Float
|
||||||
impl_from! { f32, f64, #[stable(feature = "lossless_float_conv", since = "1.6.0")] }
|
impl_from! { f32, f64, #[stable(feature = "lossless_float_conv", since = "1.6.0")] }
|
||||||
|
|
||||||
|
// bool -> Float
|
||||||
|
#[stable(feature = "float_from_bool", since = "CURRENT_RUSTC_VERSION")]
|
||||||
|
#[rustc_const_unstable(feature = "const_num_from_num", issue = "87852")]
|
||||||
|
impl const From<bool> for f32 {
|
||||||
|
/// Converts `bool` to `f32` losslessly.
|
||||||
|
#[inline]
|
||||||
|
fn from(small: bool) -> Self {
|
||||||
|
small as u8 as Self
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#[stable(feature = "float_from_bool", since = "CURRENT_RUSTC_VERSION")]
|
||||||
|
#[rustc_const_unstable(feature = "const_num_from_num", issue = "87852")]
|
||||||
|
impl const From<bool> for f64 {
|
||||||
|
/// Converts `bool` to `f64` losslessly.
|
||||||
|
#[inline]
|
||||||
|
fn from(small: bool) -> Self {
|
||||||
|
small as u8 as Self
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// no possible bounds violation
|
// no possible bounds violation
|
||||||
macro_rules! try_from_unbounded {
|
macro_rules! try_from_unbounded {
|
||||||
($source:ty, $($target:ty),*) => {$(
|
($source:ty, $($target:ty),*) => {$(
|
||||||
|
Loading…
Reference in New Issue
Block a user