public EitherTC <TLeft, TReturn> Apply <TReturn>(EitherTC <TLeft, Func <TRight, TReturn> > f) { if (f.IsRight) { return(this.FMap <TReturn>(f.ToRight().Value)); } else { return(EitherTC <TLeft> .Left <TReturn>(f.ToLeft().Value)); } }
public override EitherTC <TLeft, TReturn> ComputeWith <TReturn>(Func <TRight, EitherTC <TLeft, TReturn> > f) { return(EitherTC <TLeft> .Left <TReturn>(this.Value)); }