protected ModuleHandler::getImplementationInfo($hook)
Provides information about modules' implementations of a hook.
Parameters
string $hook: The name of the hook (e.g. "help" or "menu").
Return value
mixed[] An array whose keys are the names of the modules which are implementing this hook and whose values are either a string identifying a file in which the implementation is to be found, or FALSE, if the implementation is in the module file.
File
- core/lib/Drupal/Core/Extension/ModuleHandler.php, line 517
Class
- ModuleHandler
- Class that manages modules in a Drupal installation.
Namespace
Drupal\Core\Extension
Code
protected function getImplementationInfo($hook) { if (!isset($this->implementations)) { $this->implementations = array(); $this->verified = array(); if ($cache = $this->cacheBackend->get('module_implements')) { $this->implementations = $cache->data; } } if (!isset($this->implementations[$hook])) { // The hook is not cached, so ensure that whether or not it has // implementations, the cache is updated at the end of the request. $this->cacheNeedsWriting = TRUE; // Discover implementations. $this->implementations[$hook] = $this->buildImplementationInfo($hook); // Implementations are always "verified" as part of the discovery. $this->verified[$hook] = TRUE; } elseif (!isset($this->verified[$hook])) { if (!$this->verifyImplementations($this->implementations[$hook], $hook)) { // One or more of the implementations did not exist and need to be // removed in the cache. $this->cacheNeedsWriting = TRUE; } $this->verified[$hook] = TRUE; } return $this->implementations[$hook]; }
Please login to continue.