AK: Add ensure_capacity() for HashMap and HashTable.
These functions make sure that the underlying table can accomodate at least 'capacity' entries before needing a rehash.
This commit is contained in:
parent
4fb2e5d8af
commit
12120167a9
Notes:
sideshowbarker
2024-07-19 13:55:16 +09:00
Author: https://github.com/awesomekling Commit: https://github.com/SerenityOS/serenity/commit/12120167a9a
2 changed files with 8 additions and 0 deletions
|
@ -69,6 +69,8 @@ public:
|
|||
ConstIteratorType end() const { return m_table.end(); }
|
||||
ConstIteratorType find(const K&) const;
|
||||
|
||||
void ensure_capacity(int capacity) { m_table.ensure_capacity(capacity); }
|
||||
|
||||
void dump() const { m_table.dump(); }
|
||||
|
||||
V get(const K& key) const
|
||||
|
|
|
@ -49,6 +49,12 @@ public:
|
|||
int size() const { return m_size; }
|
||||
int capacity() const { return m_capacity; }
|
||||
|
||||
void ensure_capacity(int capacity)
|
||||
{
|
||||
ASSERT(capacity >= size());
|
||||
rehash(capacity);
|
||||
}
|
||||
|
||||
void set(const T&);
|
||||
void set(T&&);
|
||||
bool contains(const T&) const;
|
||||
|
|
Loading…
Add table
Reference in a new issue