Как документировать аргументы метода-прослойки?

Несколько методов класса просто пересылают вызовы в одноименные методы другого класса, предварительно выполнив нехитрые операции.

Поскольку методы перекидываются 1:1, можно было бы обойтись без явного перечисления всех аргументов:
class SomeClass
{
    /**
     * Как бы описать тут, что все аргументы 1:1 из someOtherClass::methodA
     * 
     * @see someOtherClass::methodA() – типа этого может, как-то?
     * 
     * @param mixed $args 
     * @return mixed 
     */
    public function methodA(...$args)
    {
        // что-то там..
        $someArgument = mt_rand(0, 10);
        $otherClassInstance = new SomeOtherClass($someArgument);
        
        // и, наконец:
        return $otherClassInstance->methodA(...$args);
    }    
}

Как описать аргументы и возвращаемый тип, чтобы IDE соображала, что там сквозная передача в др. метод, и типы аргументов такие-то? И при изменении того-класса, тут не приходилось что-то менять.

Или же в правильном коде нет места этим многоточиям, и надо честно перечислять все типы-аргументы-возвращаемый тип?
  • Вопрос задан
  • 57 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы