From 9782992662c1c01e89d0c55de220a1235877abdc Mon Sep 17 00:00:00 2001 From: Bobbin Threadbare Date: Fri, 9 Dec 2022 13:51:16 -0800 Subject: [PATCH] feat: improve blake3 sequential hashing performance --- src/hash/blake/mod.rs | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/hash/blake/mod.rs b/src/hash/blake/mod.rs index 6ffbfb5..b596ab9 100644 --- a/src/hash/blake/mod.rs +++ b/src/hash/blake/mod.rs @@ -276,13 +276,11 @@ where let digest = if Felt::IS_CANONICAL { blake3::hash(E::elements_as_bytes(elements)) } else { - E::as_base_elements(elements) - .iter() - .fold(blake3::Hasher::new(), |mut hasher, felt| { - hasher.update(&felt.as_int().to_le_bytes()); - hasher - }) - .finalize() + let mut hasher = blake3::Hasher::new(); + for element in E::as_base_elements(elements) { + hasher.update(&element.as_int().to_le_bytes()); + } + hasher.finalize() }; *shrink_bytes(&digest.into()) }