1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 12:28:12 +00:00

LibJS: Use HashMap::remove_all_matching() in WeakMap

This commit is contained in:
Andreas Kling 2022-01-05 16:57:16 +01:00
parent 376e5ef912
commit c7ac0c2c80

View file

@ -25,14 +25,9 @@ WeakMap::~WeakMap()
void WeakMap::remove_dead_cells(Badge<Heap>)
{
// FIXME: Do this in a single pass.
Vector<Cell*> to_remove;
for (auto& it : m_values) {
if (it.key->state() != Cell::State::Live)
to_remove.append(it.key);
}
for (auto* cell : to_remove)
m_values.remove(cell);
m_values.remove_all_matching([](Cell* key, Value) {
return key->state() != Cell::State::Live;
});
}
void WeakMap::visit_edges(Visitor& visitor)