function ModuleHandler::invoke
Invokes a hook in a particular module.
Parameters
string $module: The name of the module (without the .module extension).
string $hook: The name of the hook to invoke.
array $args: Arguments to pass to the hook implementation.
Return value
mixed The return value of the hook implementation.
Overrides ModuleHandlerInterface::invoke
1 call to ModuleHandler::invoke()
- ModuleHandler::invokeDeprecated in core/
lib/ Drupal/ Core/ Extension/ ModuleHandler.php - Invokes a deprecated hook in a particular module.
File
-
core/
lib/ Drupal/ Core/ Extension/ ModuleHandler.php, line 374
Class
- ModuleHandler
- Class that manages modules in a Drupal installation.
Namespace
Drupal\Core\ExtensionCode
public function invoke($module, $hook, array $args = []) {
$list = $this->getHookImplementationList($hook);
$listeners = $list->getForModule($module);
if ($listeners) {
if (count($listeners) > 1) {
throw new \LogicException("Module {$module} should not implement {$hook} more than once");
}
return reset($listeners)(...$args);
}
return $this->legacyInvoke($module, $hook, $args);
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.