Mercurial > hg > isophonics-drupal-site
view core/lib/Drupal/Component/Plugin/CategorizingPluginManagerInterface.php @ 17:129ea1e6d783
Update, including to Drupal core 8.6.10
author | Chris Cannam |
---|---|
date | Thu, 28 Feb 2019 13:21:36 +0000 |
parents | 4c8ae668cc8c |
children |
line wrap: on
line source
<?php namespace Drupal\Component\Plugin; /** * Defines an interface for plugin managers that categorize plugin definitions. */ interface CategorizingPluginManagerInterface extends PluginManagerInterface { /** * Gets the names of all categories. * * @return string[] * An array of translated categories, sorted alphabetically. */ public function getCategories(); /** * Gets sorted plugin definitions. * * @param array[]|null $definitions * (optional) The plugin definitions to sort. If omitted, all plugin * definitions are used. * * @return array[] * An array of plugin definitions, sorted by category and label. */ public function getSortedDefinitions(array $definitions = NULL); /** * Gets sorted plugin definitions grouped by category. * * In addition to grouping, both categories and its entries are sorted, * whereas plugin definitions are sorted by label. * * @param array[]|null $definitions * (optional) The plugin definitions to group. If omitted, all plugin * definitions are used. * * @return array[] * Keys are category names, and values are arrays of which the keys are * plugin IDs and the values are plugin definitions. */ public function getGroupedDefinitions(array $definitions = NULL); }