diff --git a/coins/monero/src/serialize.rs b/coins/monero/src/serialize.rs index d10ad423..d3e983b0 100644 --- a/coins/monero/src/serialize.rs +++ b/coins/monero/src/serialize.rs @@ -141,16 +141,16 @@ pub(crate) fn read_raw_vec io::Result>( Ok(res) } +pub(crate) fn read_array io::Result, const N: usize>( + f: F, + r: &mut R, +) -> io::Result<[T; N]> { + read_raw_vec(f, N, r).map(|vec| vec.try_into().unwrap()) +} + pub(crate) fn read_vec io::Result>( f: F, r: &mut R, ) -> io::Result> { read_raw_vec(f, read_varint(r)?.try_into().unwrap(), r) } - -pub(crate) fn read_array io::Result>( - f: F, - r: &mut R, -) -> io::Result<[T; N]> { - (0 .. N).map(|_| f(r)).collect::>>().map(|vec| vec.try_into().unwrap()) -}