A right-biased disjunctive type with applicative functor requiring a semigroup on the left type. This is useful for composing validation functions.
Variables
Methods
inline flatMapV<B> (f:A ‑> Validation<E, B>):Validation<E, B>
This is not simply flatMap because it is not consistent with ap,
as should be the case in other monads. It is equivalent to
this.either.flatMap(f).validation
orElseV (other:Validation<E, A>, s:Semigroup<E>):Validation<E, A>
If this
validation is a Right, keep it. Otherwise, try other
as an
alternative, merging their errors if both are Left.
Static methods
staticinline val10<X, A, B, C, D, E, F, G, H, I, J, K> (f:A ‑> B ‑> C ‑> D ‑> E ‑> F ‑> G ‑> H ‑> I ‑> J ‑> K, v1:Validation<X, A>, v2:Validation<X, B>, v3:Validation<X, C>, v4:Validation<X, D>, v5:Validation<X, E>, v6:Validation<X, F>, v7:Validation<X, G>, v8:Validation<X, H>, v9:Validation<X, I>, v10:Validation<X, J>, s:Semigroup<X>):Validation<X, K>
staticinline val11<X, A, B, C, D, E, F, G, H, I, J, K, L> (f:A ‑> B ‑> C ‑> D ‑> E ‑> F ‑> G ‑> H ‑> I ‑> J ‑> K ‑> L, v1:Validation<X, A>, v2:Validation<X, B>, v3:Validation<X, C>, v4:Validation<X, D>, v5:Validation<X, E>, v6:Validation<X, F>, v7:Validation<X, G>, v8:Validation<X, H>, v9:Validation<X, I>, v10:Validation<X, J>, v11:Validation<X, K>, s:Semigroup<X>):Validation<X, L>
staticinline val12<X, A, B, C, D, E, F, G, H, I, J, K, L, M> (f:A ‑> B ‑> C ‑> D ‑> E ‑> F ‑> G ‑> H ‑> I ‑> J ‑> K ‑> L ‑> M, v1:Validation<X, A>, v2:Validation<X, B>, v3:Validation<X, C>, v4:Validation<X, D>, v5:Validation<X, E>, v6:Validation<X, F>, v7:Validation<X, G>, v8:Validation<X, H>, v9:Validation<X, I>, v10:Validation<X, J>, v11:Validation<X, K>, v12:Validation<X, L>, s:Semigroup<X>):Validation<X, M>
staticinline val13<X, A, B, C, D, E, F, G, H, I, J, K, L, M, N> (f:A ‑> B ‑> C ‑> D ‑> E ‑> F ‑> G ‑> H ‑> I ‑> J ‑> K ‑> L ‑> M ‑> N, v1:Validation<X, A>, v2:Validation<X, B>, v3:Validation<X, C>, v4:Validation<X, D>, v5:Validation<X, E>, v6:Validation<X, F>, v7:Validation<X, G>, v8:Validation<X, H>, v9:Validation<X, I>, v10:Validation<X, J>, v11:Validation<X, K>, v12:Validation<X, L>, v13:Validation<X, M>, s:Semigroup<X>):Validation<X, N>
staticinline val14<X, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O> (f:A ‑> B ‑> C ‑> D ‑> E ‑> F ‑> G ‑> H ‑> I ‑> J ‑> K ‑> L ‑> M ‑> N ‑> O, v1:Validation<X, A>, v2:Validation<X, B>, v3:Validation<X, C>, v4:Validation<X, D>, v5:Validation<X, E>, v6:Validation<X, F>, v7:Validation<X, G>, v8:Validation<X, H>, v9:Validation<X, I>, v10:Validation<X, J>, v11:Validation<X, K>, v12:Validation<X, L>, v13:Validation<X, M>, v14:Validation<X, N>, s:Semigroup<X>):Validation<X, O>
staticinline val15<X, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> (f:A ‑> B ‑> C ‑> D ‑> E ‑> F ‑> G ‑> H ‑> I ‑> J ‑> K ‑> L ‑> M ‑> N ‑> O ‑> P, v1:Validation<X, A>, v2:Validation<X, B>, v3:Validation<X, C>, v4:Validation<X, D>, v5:Validation<X, E>, v6:Validation<X, F>, v7:Validation<X, G>, v8:Validation<X, H>, v9:Validation<X, I>, v10:Validation<X, J>, v11:Validation<X, K>, v12:Validation<X, L>, v13:Validation<X, M>, v14:Validation<X, N>, v15:Validation<X, O>, s:Semigroup<X>):Validation<X, P>
staticinline val16<X, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q> (f:A ‑> B ‑> C ‑> D ‑> E ‑> F ‑> G ‑> H ‑> I ‑> J ‑> K ‑> L ‑> M ‑> N ‑> O ‑> P ‑> Q, v1:Validation<X, A>, v2:Validation<X, B>, v3:Validation<X, C>, v4:Validation<X, D>, v5:Validation<X, E>, v6:Validation<X, F>, v7:Validation<X, G>, v8:Validation<X, H>, v9:Validation<X, I>, v10:Validation<X, J>, v11:Validation<X, K>, v12:Validation<X, L>, v13:Validation<X, M>, v14:Validation<X, N>, v15:Validation<X, O>, v16:Validation<X, P>, s:Semigroup<X>):Validation<X, Q>
staticinline val17<X, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R> (f:A ‑> B ‑> C ‑> D ‑> E ‑> F ‑> G ‑> H ‑> I ‑> J ‑> K ‑> L ‑> M ‑> N ‑> O ‑> P ‑> Q ‑> R, v1:Validation<X, A>, v2:Validation<X, B>, v3:Validation<X, C>, v4:Validation<X, D>, v5:Validation<X, E>, v6:Validation<X, F>, v7:Validation<X, G>, v8:Validation<X, H>, v9:Validation<X, I>, v10:Validation<X, J>, v11:Validation<X, K>, v12:Validation<X, L>, v13:Validation<X, M>, v14:Validation<X, N>, v15:Validation<X, O>, v16:Validation<X, P>, v17:Validation<X, Q>, s:Semigroup<X>):Validation<X, R>
staticinline val18<X, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S> (f:A ‑> B ‑> C ‑> D ‑> E ‑> F ‑> G ‑> H ‑> I ‑> J ‑> K ‑> L ‑> M ‑> N ‑> O ‑> P ‑> Q ‑> R ‑> S, v1:Validation<X, A>, v2:Validation<X, B>, v3:Validation<X, C>, v4:Validation<X, D>, v5:Validation<X, E>, v6:Validation<X, F>, v7:Validation<X, G>, v8:Validation<X, H>, v9:Validation<X, I>, v10:Validation<X, J>, v11:Validation<X, K>, v12:Validation<X, L>, v13:Validation<X, M>, v14:Validation<X, N>, v15:Validation<X, O>, v16:Validation<X, P>, v17:Validation<X, Q>, v18:Validation<X, R>, s:Semigroup<X>):Validation<X, S>
staticinline val19<X, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T> (f:A ‑> B ‑> C ‑> D ‑> E ‑> F ‑> G ‑> H ‑> I ‑> J ‑> K ‑> L ‑> M ‑> N ‑> O ‑> P ‑> Q ‑> R ‑> S ‑> T, v1:Validation<X, A>, v2:Validation<X, B>, v3:Validation<X, C>, v4:Validation<X, D>, v5:Validation<X, E>, v6:Validation<X, F>, v7:Validation<X, G>, v8:Validation<X, H>, v9:Validation<X, I>, v10:Validation<X, J>, v11:Validation<X, K>, v12:Validation<X, L>, v13:Validation<X, M>, v14:Validation<X, N>, v15:Validation<X, O>, v16:Validation<X, P>, v17:Validation<X, Q>, v18:Validation<X, R>, v19:Validation<X, S>, s:Semigroup<X>):Validation<X, T>
staticinline val2<X, A, B, C> (f:A ‑> B ‑> C, v1:Validation<X, A>, v2:Validation<X, B>, s:Semigroup<X>):Validation<X, C>
staticinline val20<X, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U> (f:A ‑> B ‑> C ‑> D ‑> E ‑> F ‑> G ‑> H ‑> I ‑> J ‑> K ‑> L ‑> M ‑> N ‑> O ‑> P ‑> Q ‑> R ‑> S ‑> T ‑> U, v1:Validation<X, A>, v2:Validation<X, B>, v3:Validation<X, C>, v4:Validation<X, D>, v5:Validation<X, E>, v6:Validation<X, F>, v7:Validation<X, G>, v8:Validation<X, H>, v9:Validation<X, I>, v10:Validation<X, J>, v11:Validation<X, K>, v12:Validation<X, L>, v13:Validation<X, M>, v14:Validation<X, N>, v15:Validation<X, O>, v16:Validation<X, P>, v17:Validation<X, Q>, v18:Validation<X, R>, v19:Validation<X, S>, v20:Validation<X, T>, s:Semigroup<X>):Validation<X, U>
staticinline val3<X, A, B, C, D> (f:A ‑> B ‑> C ‑> D, v1:Validation<X, A>, v2:Validation<X, B>, v3:Validation<X, C>, s:Semigroup<X>):Validation<X, D>
staticinline val4<X, A, B, C, D, E> (f:A ‑> B ‑> C ‑> D ‑> E, v1:Validation<X, A>, v2:Validation<X, B>, v3:Validation<X, C>, v4:Validation<X, D>, s:Semigroup<X>):Validation<X, E>
staticinline val5<X, A, B, C, D, E, F> (f:A ‑> B ‑> C ‑> D ‑> E ‑> F, v1:Validation<X, A>, v2:Validation<X, B>, v3:Validation<X, C>, v4:Validation<X, D>, v5:Validation<X, E>, s:Semigroup<X>):Validation<X, F>
staticinline val6<X, A, B, C, D, E, F, G> (f:A ‑> B ‑> C ‑> D ‑> E ‑> F ‑> G, v1:Validation<X, A>, v2:Validation<X, B>, v3:Validation<X, C>, v4:Validation<X, D>, v5:Validation<X, E>, v6:Validation<X, F>, s:Semigroup<X>):Validation<X, G>
staticinline val7<X, A, B, C, D, E, F, G, H> (f:A ‑> B ‑> C ‑> D ‑> E ‑> F ‑> G ‑> H, v1:Validation<X, A>, v2:Validation<X, B>, v3:Validation<X, C>, v4:Validation<X, D>, v5:Validation<X, E>, v6:Validation<X, F>, v7:Validation<X, G>, s:Semigroup<X>):Validation<X, H>
staticinline val8<X, A, B, C, D, E, F, G, H, I> (f:A ‑> B ‑> C ‑> D ‑> E ‑> F ‑> G ‑> H ‑> I, v1:Validation<X, A>, v2:Validation<X, B>, v3:Validation<X, C>, v4:Validation<X, D>, v5:Validation<X, E>, v6:Validation<X, F>, v7:Validation<X, G>, v8:Validation<X, H>, s:Semigroup<X>):Validation<X, I>
staticinline val9<X, A, B, C, D, E, F, G, H, I, J> (f:A ‑> B ‑> C ‑> D ‑> E ‑> F ‑> G ‑> H ‑> I ‑> J, v1:Validation<X, A>, v2:Validation<X, B>, v3:Validation<X, C>, v4:Validation<X, D>, v5:Validation<X, E>, v6:Validation<X, F>, v7:Validation<X, G>, v8:Validation<X, H>, v9:Validation<X, I>, s:Semigroup<X>):Validation<X, J>