mirror of
https://github.com/fergalmoran/ladybird.git
synced 2026-02-20 22:55:03 +00:00
JSSpecCompiler: Elide nested TreeList nodes
This commit is contained in:
committed by
Jelle Raaijmakers
parent
f30815b534
commit
14a86c8fd6
@@ -83,10 +83,22 @@ Vector<NodeSubtreePointer> IfElseIfChain::subtrees()
|
||||
return result;
|
||||
}
|
||||
|
||||
TreeList::TreeList(Vector<Tree>&& trees)
|
||||
{
|
||||
for (auto const& tree : trees) {
|
||||
if (tree->is_list()) {
|
||||
for (auto const& nested_tree : as<TreeList>(tree)->m_trees)
|
||||
m_trees.append(nested_tree);
|
||||
} else {
|
||||
m_trees.append(tree);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Vector<NodeSubtreePointer> TreeList::subtrees()
|
||||
{
|
||||
Vector<NodeSubtreePointer> result;
|
||||
for (auto& expression : m_expressions)
|
||||
for (auto& expression : m_trees)
|
||||
result.append({ &expression });
|
||||
return result;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user