AK: Add function 'shallow_clone()' to HashMap

This makes a shallow clone of the HashMap, the items temselves are not
cloned in any way.
This commit is contained in:
Kenneth Myhra 2023-02-11 21:07:58 +01:00 committed by Linus Groh
parent 3bc5fcaccc
commit 9d13537fc7

View file

@ -1,5 +1,6 @@
/*
* Copyright (c) 2018-2020, Andreas Kling <kling@serenityos.org>
* Copyright (c) 2023, Kenneth Myhra <kennethmyhra@serenityos.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
@ -280,6 +281,14 @@ public:
return hash;
}
ErrorOr<HashMap<K, V>> clone()
{
HashMap<K, V> hash_map_clone;
for (auto& it : *this)
TRY(hash_map_clone.try_set(it.key, it.value));
return hash_map_clone;
}
private:
HashTableType m_table;
};