From 163eeaf24ea33d5b6d41996c4c722e4a6c9b5835 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D1=80=D1=82=D1=91=D0=BC=20=D0=9F=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=BE=D0=B2=20=5BArtyom=20Pavlov=5D?= Date: Wed, 28 Jan 2026 17:05:39 +0300 Subject: [PATCH] Tweak `UnwrapErr` impl --- src/unwrap_err.rs | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/src/unwrap_err.rs b/src/unwrap_err.rs index 6823060a..603fd20f 100644 --- a/src/unwrap_err.rs +++ b/src/unwrap_err.rs @@ -34,26 +34,24 @@ impl TryRng for UnwrapErr { #[inline] fn try_next_u32(&mut self) -> Result { - self.0 - .try_next_u32() - .map_err(|err| panic!("rand_core::UnwrapErr: failed to unwrap: {err}")) + self.0.try_next_u32().map_err(panic_msg) } #[inline] fn try_next_u64(&mut self) -> Result { - self.0 - .try_next_u64() - .map_err(|err| panic!("rand_core::UnwrapErr: failed to unwrap: {err}")) + self.0.try_next_u64().map_err(panic_msg) } #[inline] fn try_fill_bytes(&mut self, dst: &mut [u8]) -> Result<(), Self::Error> { - self.0 - .try_fill_bytes(dst) - .map_err(|err| panic!("rand_core::UnwrapErr: failed to unwrap: {err}")) + self.0.try_fill_bytes(dst).map_err(panic_msg) } } +fn panic_msg(err: impl core::error::Error) -> Infallible { + panic!("rand_core::UnwrapErr: failed to unwrap: {err}") +} + impl TryCryptoRng for UnwrapErr {} impl<'r, R: TryRng + ?Sized> UnwrapErr<&'r mut R> {