Ejemplo n.º 1
0
 public Validn <C> ZipWith <B, C>(Validn <B> vb, Func <A, B, C> f)
 => Cata
     (ea =>
     vb.Cata
         (eb => Validn <C> .Failure(ea.AddRange(eb))
         , _ => Validn <C> .Failure(ea)
         )
     , a =>
     vb.Cata
         (Validn <C> .Failure
         , b => Validn <C> .Success(f(a, b))
         )
     );
Ejemplo n.º 2
0
 public Validn <B> Map <B>(Func <A, B> f)
 => Cata(Validn <B> .Failure, a => Validn <B> .Success(f(a)));