From 991caf6031491c73a514d464137d8bf5c7a9c9a4 Mon Sep 17 00:00:00 2001 From: Gary Talent Date: Thu, 27 Jan 2022 01:47:35 -0600 Subject: [PATCH] [ox/std] Make HashMap::expand move new Pair Vector instead of copy (synced from ff76d2f453b4a99cc616e34f34332efc626ee6f8) --- src/ox/std/hashmap.hpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/ox/std/hashmap.hpp b/src/ox/std/hashmap.hpp index f47e25df6..1b313d774 100644 --- a/src/ox/std/hashmap.hpp +++ b/src/ox/std/hashmap.hpp @@ -213,17 +213,17 @@ const Vector &HashMap::keys() const noexcept { template void HashMap::expand() { Vector r; - for (std::size_t i = 0; i < m_keys.size(); i++) { + for (std::size_t i = 0; i < m_keys.size(); ++i) { auto k = m_keys[i]; access(r, k) = access(m_pairs, k); } - m_pairs = r; + m_pairs = std::move(r); } template uint64_t HashMap::hash(K k, int len) noexcept { uint64_t sum = 1; - for (int i = 0; i < len && k[i]; i++) { + for (int i = 0; i < len && k[i]; ++i) { sum += ((sum + k[i]) * 7) * sum; } return sum;