public function showOnlyCurrentChildren(ItemInterface $menu)
{
$itemIterator = new RecursiveItemIterator($menu->getIterator());
$iterator = new \RecursiveIteratorIterator($itemIterator, \RecursiveIteratorIterator::SELF_FIRST);
foreach ($iterator as $menuItem) {
/** @var \Knp\Menu\MenuItem $menuItem */
if (!$this->matcher->isCurrent($menuItem) && !$this->matcher->isAncestor($menuItem)) {
$menuItem->setDisplayChildren(false);
}
}
}