Должны ли методы иметь PHPDocs для необработанных исключений?

Скажем, в классе у меня есть эти очень надуманные методы:

/**
* @param bool $flag
* @throws \InvalidArgumentException _bubbled up_ if $flag is not bool
*/
public function fu($flag){
$this->bar($flag);
}

/**
* @param bool $flag
* @throws \InvalidArgumentException if $flag is not bool
*/
private function bar($flag) {
if (!is_bool($flag)){
throw new \InvalidArgumentException('bool required');
}
}

Так как только fu() Публично, разработчики, просматривающие мой API, могут не видеть, что bar() может бросить исключение. Я чувствовал, что было бы неплохо добавить дополнительные @throws тег к fu() поэтому разработчики будут знать, что они могут захотеть поймать исключение, когда они его называют.

Это хорошая идея или плохая? Зачем?

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …