LibJS: Use HashTable::remove_all_matching() in WeakSet :^)

This commit is contained in:
Andreas Kling 2022-01-05 16:48:05 +01:00
parent 54cf42fac1
commit e08d325124

View file

@ -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;
});
}
}