то, required ли поле. Как будешь извращаться, дабы принимать и колбек, и бул? Только без твоей еболы типа "влепи везде колбек" или "переименуй метод" - оба очень хуевые решения.
агрумент с массимов это вообще не аргумент "мне так по приколу" - это не аргумент. если ты сам не знаешь, работает твой метод с коллекцией или с объектом, то дай ему хотя бы вменяемую сигнатуру, чтоб программист не ожидал обработку объекта где идёт обработка массива
class BoolCallable {} class Bool extends BoolCallable { public function __construct(bool $bool) { ... }} class Callable extends BoolCallable { public function __construct(callable $callable) { .. }} ->required(BoolCallable $item)
->required(bool) ->requiredIf(callable)
Выглядит говёно. Не понимаю как вот это можно назвать читабельным.
Обсуждают сегодня