diff options
Diffstat (limited to 'third_party/rust/ahash/src/convert.rs')
-rw-r--r-- | third_party/rust/ahash/src/convert.rs | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/third_party/rust/ahash/src/convert.rs b/third_party/rust/ahash/src/convert.rs index 4c0a00eb7c..712eae163b 100644 --- a/third_party/rust/ahash/src/convert.rs +++ b/third_party/rust/ahash/src/convert.rs @@ -7,17 +7,13 @@ macro_rules! convert { impl Convert<$b> for $a { #[inline(always)] fn convert(self) -> $b { - unsafe { - core::mem::transmute::<$a, $b>(self) - } + zerocopy::transmute!(self) } } impl Convert<$a> for $b { #[inline(always)] fn convert(self) -> $a { - unsafe { - core::mem::transmute::<$b, $a>(self) - } + zerocopy::transmute!(self) } } }; @@ -69,8 +65,7 @@ macro_rules! as_array { { #[inline(always)] fn as_array<T>(slice: &[T]) -> &[T; $len] { - assert_eq!(slice.len(), $len); - unsafe { &*(slice.as_ptr() as *const [_; $len]) } + core::convert::TryFrom::try_from(slice).unwrap() } as_array($input) } |