LibJS: Use HashTable::remove_all_matching() in WeakSet :^)
This commit is contained in:
parent
54cf42fac1
commit
e08d325124
Notes:
sideshowbarker
2024-07-17 21:35:24 +09:00
Author: https://github.com/awesomekling Commit: https://github.com/SerenityOS/serenity/commit/e08d3251249
1 changed files with 3 additions and 8 deletions
|
@ -25,14 +25,9 @@ WeakSet::~WeakSet()
|
|||
|
||||
void WeakSet::remove_dead_cells(Badge<Heap>)
|
||||
{
|
||||
// FIXME: Do this in a single pass.
|
||||
Vector<Cell*> to_remove;
|
||||
for (auto* cell : m_values) {
|
||||
if (cell->state() != Cell::State::Live)
|
||||
to_remove.append(cell);
|
||||
}
|
||||
for (auto* cell : to_remove)
|
||||
m_values.remove(cell);
|
||||
m_values.remove_all_matching([](Cell* cell) {
|
||||
return cell->state() != Cell::State::Live;
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue