mkobit
05/22/2019, 4:29 PMfun validateCriteriaA(thing: Thing): Validated<ValidationError, Thing>
* fun validateCriteriaB(thing: Thing, otherInput: Int): : Validated<ValidationError, Thing>
If this is the right approach, what is the right way to combine them and get all validation errors?
So far, I had something like:
Validated.applicative(NonEmptyList.semigroup<Thing>())
.map(
validateCriteriaA(thing).toValidatedNel(),
validateCriteriaB(thing, someInput).toValidatedNel()
) { (thing1, thing2) ->
// this doesn't feel right, since I'm only validating a single thing
}.fix()
Any suggestions?