diff options
Diffstat (limited to 'third_party/rust/packed_simd/src/api/into_bits.rs')
-rw-r--r-- | third_party/rust/packed_simd/src/api/into_bits.rs | 59 |
1 files changed, 0 insertions, 59 deletions
diff --git a/third_party/rust/packed_simd/src/api/into_bits.rs b/third_party/rust/packed_simd/src/api/into_bits.rs deleted file mode 100644 index 03fbe4bff7..0000000000 --- a/third_party/rust/packed_simd/src/api/into_bits.rs +++ /dev/null @@ -1,59 +0,0 @@ -//! Implementation of `FromBits` and `IntoBits`. - -/// Safe lossless bitwise conversion from `T` to `Self`. -#[cfg_attr(doc_cfg, doc(cfg(feature = "into_bits")))] -pub trait FromBits<T>: crate::marker::Sized { - /// Safe lossless bitwise transmute from `T` to `Self`. - fn from_bits(t: T) -> Self; -} - -/// Safe lossless bitwise conversion from `Self` to `T`. -#[cfg_attr(doc_cfg, doc(cfg(feature = "into_bits")))] -pub trait IntoBits<T>: crate::marker::Sized { - /// Safe lossless bitwise transmute from `self` to `T`. - fn into_bits(self) -> T; -} - -/// `FromBits` implies `IntoBits`. -impl<T, U> IntoBits<U> for T -where - U: FromBits<T>, -{ - #[inline] - fn into_bits(self) -> U { - debug_assert!(crate::mem::size_of::<Self>() == crate::mem::size_of::<U>()); - U::from_bits(self) - } -} - -/// `FromBits` and `IntoBits` are reflexive -impl<T> FromBits<T> for T { - #[inline] - fn from_bits(t: Self) -> Self { - t - } -} - -#[macro_use] -mod macros; - -mod v16; -pub use self::v16::*; - -mod v32; -pub use self::v32::*; - -mod v64; -pub use self::v64::*; - -mod v128; -pub use self::v128::*; - -mod v256; -pub use self::v256::*; - -mod v512; -pub use self::v512::*; - -mod arch_specific; -pub use self::arch_specific::*; |