Мы используем свойство проверки scalaz в нашем проекте для проверки параметров HTTP. Обычный случай - это получение нескольких проверенных значений и выполнение необходимых действий только в том случае, если все они допустимы, в противном случае возвращается список ошибок:
(pavam1Val.liftFailNel |@|
param2Val.liftFailNel |@|
param3Val.liftFailNel) {
getSomeResponse(_, _, _)
}
Это хорошо работает, пока нам не придется использовать более 8 параметров, потому что | @ | Оператор создает ApplicativeBuilder, который ограничен 8 аргументами. Есть ли другой способ выполнить такую одновременную проверку, желательно, чтобы код был читабельным?