Improve iteration in MakeIterator

This commit is contained in:
Siklos 2022-08-08 13:32:39 +02:00
parent ddb483fff5
commit 7b23283201

View file

@ -11,14 +11,14 @@ export function * MakeIterator(root: IContainerModel): Generator<IContainerModel
yield container;
// if this reverse() gets costly, replace it by a simple for
container.children.forEach((child) => {
for (let i = container.children.length - 1; i >= 0; i--) {
const child = container.children[i];
if (visited.has(child)) {
return;
}
visited.add(child);
queue.push(child);
});
}
}
}