protected function MenuTreeStorage::doCollectRoutesAndDefinitions

protected MenuTreeStorage::doCollectRoutesAndDefinitions(array $tree, array &$definitions)

Collects all the route names and definitions.

Parameters

array $tree: A menu link tree from MenuTreeStorage::doBuildTreeData()

array $definitions: The collected definitions which are populated by reference.

Return value

array The collected route names.

File

core/lib/Drupal/Core/Menu/MenuTreeStorage.php, line 988

Class

MenuTreeStorage
Provides a menu tree storage using the database.

Namespace

Drupal\Core\Menu

Code

protected function doCollectRoutesAndDefinitions(array $tree, array &$definitions) {
  $route_names = array();
  foreach (array_keys($tree) as $id) {
    $definitions[$id] = $this->definitions[$id];
    if (!empty($definition['route_name'])) {
      $route_names[$definition['route_name']] = $definition['route_name'];
    }
    if ($tree[$id]['subtree']) {
      $route_names += $this->doCollectRoutesAndDefinitions($tree[$id]['subtree'], $definitions);
    }
  }
  return $route_names;
}

© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/core!lib!Drupal!Core!Menu!MenuTreeStorage.php/function/MenuTreeStorage::doCollectRoutesAndDefinitions/8.1.x