diff --git a/src/Forms/Container.php b/src/Forms/Container.php index e7c3a9417..7fa47ab7c 100644 --- a/src/Forms/Container.php +++ b/src/Forms/Container.php @@ -36,7 +36,7 @@ class Container extends Nette\ComponentModel\Container implements \ArrayAccess public array $onValidate = []; protected ?ControlGroup $currentGroup = null; - /** @var array */ + /** @var array */ private static array $extMethods = []; private ?bool $validated = false; private ?string $mappedType = null; @@ -626,6 +626,7 @@ public function addContainer(string|int $name): self public function __call(string $name, array $args) { if (isset(self::$extMethods[$name])) { + /** @var never[] $args */ return (self::$extMethods[$name])($this, ...$args); } @@ -633,7 +634,7 @@ public function __call(string $name, array $args) } - /** @param callable(static): mixed $callback */ + /** @param callable(static, never, never, never, never, never, never, never, never, never): mixed $callback */ public static function extensionMethod(string $name, callable $callback): void { if (str_contains($name, '::')) { // back compatibility diff --git a/src/Forms/Controls/BaseControl.php b/src/Forms/Controls/BaseControl.php index fa616e509..61608f55a 100644 --- a/src/Forms/Controls/BaseControl.php +++ b/src/Forms/Controls/BaseControl.php @@ -50,7 +50,7 @@ abstract class BaseControl extends Nette\ComponentModel\Component implements Con /** @var bool|bool[] */ protected bool|array $disabled = false; - /** @var array> */ + /** @var array> */ private static array $extMethods = []; private string|Stringable|null $caption; @@ -566,6 +566,7 @@ public function __call(string $name, array $args) $class = static::class; do { if (isset(self::$extMethods[$name][$class])) { + /** @var never[] $args */ return (self::$extMethods[$name][$class])($this, ...$args); } @@ -576,7 +577,7 @@ public function __call(string $name, array $args) } - /** @param callable(static): mixed $callback */ + /** @param callable(static, never, never, never, never, never, never, never, never, never): mixed $callback */ public static function extensionMethod(string $name, callable $callback): void { if (str_contains($name, '::')) { // back compatibility