protected static function _generateInterfaceMethods($interfaces, $mask = 255)
{
if (!$interfaces) {
return [];
}
$result = [];
foreach ((array) $interfaces as $interface) {
if (!interface_exists($interface)) {
throw new MissingImplementationException("Unexisting interface `{$interface}`");
}
$reflection = Inspector::inspect($interface);
$methods = $reflection->getMethods($mask);
foreach ($methods as $method) {
$result[$method->getName()] = static::_generateMethod($method);
}
}
return $result;
}