mirror of
https://github.com/fergalmoran/ladybird.git
synced 2026-01-03 23:25:20 +00:00
LibJS: Implement Set.prototype.union
This commit is contained in:
committed by
Linus Groh
parent
8e1df36588
commit
fee65f6453
@@ -23,6 +23,18 @@ void Set::initialize(Realm& realm)
|
||||
m_values = Map::create(realm);
|
||||
}
|
||||
|
||||
NonnullGCPtr<Set> Set::copy() const
|
||||
{
|
||||
auto& vm = this->vm();
|
||||
auto& realm = *vm.current_realm();
|
||||
// FIXME: This is very inefficient, but there's no better way to do this at the moment, as the underlying Map
|
||||
// implementation of m_values uses a non-copyable RedBlackTree.
|
||||
auto* result = Set::create(realm);
|
||||
for (auto const& entry : *this)
|
||||
result->set_add(entry.key);
|
||||
return *result;
|
||||
}
|
||||
|
||||
void Set::visit_edges(Cell::Visitor& visitor)
|
||||
{
|
||||
Base::visit_edges(visitor);
|
||||
|
||||
Reference in New Issue
Block a user