- EitherData
- EitherData <L, R>
- Bottom = new EitherData<L, R>(EitherStatus.IsBottom, default(R), default(L))
- State
- Right
- Left
- EitherData (EitherStatus state, R right, L left)
- GetHashCode ()
- == (EitherData<L, R> x, EitherData<L, R> y)
- != (EitherData<L, R> x, EitherData<L, R> y)
- Equals (EitherData<L, R> other)
- Equals (object obj)
- ToString ()
- EitherDataExtensions
- ToEither <L, R> (this EitherData<L, R> input)
- ToEitherAsync <L, R> (this EitherData<L, R> input)
- ToEitherAsync <L, R> (this Task<EitherData<L, R>> input)
- ToEitherAsync <L, R> (this ValueTask<EitherData<L, R>> input)
- ToEitherUnsafe <L, R> (this EitherData<L, R> input)
- ToFin <E, A> (this EitherData<E, A> input)
- ToTry <E, A> (this EitherData<E, A> input)
- ToTryAsync <E, A> (this EitherData<E, A> input)
- ToTryAsync <E, A> (this Task<EitherData<E, A>> input)
- ToTryAsync <E, A> (this ValueTask<EitherData<E, A>> input)
- EitherLeft <L>
- GetObjectData (SerializationInfo info, StreamingContext context)
- Select (Func<L, L> f)
- SelectMany (Func<L, EitherLeft<L>> f)
- SelectMany <R, B> (Func<L, EitherLeft<R>> f)
- SelectMany <C> (Func<L, EitherLeft<L>> bind, Func<L, Unit, C> project)
- SelectMany <B, C> (Func<L, EitherLeft<B>> bind, Func<L, B, C> project)
- SelectMany <B> (Func<L, Either<L, B>> f)
- SelectMany <B, C> (Func<L, Either<L, B>> bind, Func<L, B, C> project)
- ToString ()
- GetHashCode ()
- Equals (object obj)
- ToList ()
- ToArray ()
- ToSeq ()
- AsEnumerable ()
- ToEitherUnsafe <R> ()
- < (EitherLeft<L> lhs, EitherLeft<L> rhs)
- <= (EitherLeft<L> lhs, EitherLeft<L> rhs)
- > (EitherLeft<L> lhs, EitherLeft<L> rhs)
- >= (EitherLeft<L> lhs, EitherLeft<L> rhs)
- == (EitherLeft<L> lhs, EitherLeft<L> rhs)
- != (EitherLeft<L> lhs, EitherLeft<L> rhs)
- | (EitherLeft<L> lhs, EitherLeft<L> rhs)
- | (EitherRight<L> lhs, EitherLeft<L> rhs)
- | (EitherLeft<L> lhs, EitherRight<L> rhs)
- true (EitherLeft<L> value)
- false (EitherLeft<L> value)
- CompareTo (EitherLeft<L> other)
- CompareTo (L other)
- Equals (L other)
- Equals (EitherLeft<L> other)
- MatchUntyped <TResult> (Func<object, TResult> Right, Func<object, TResult> Left)
- GetUnderlyingRightType ()
- GetUnderlyingLeftType ()
- IsRight
- IsLeft
- Bind <R> ()
- EitherRight <R>
- Value
- GetObjectData (SerializationInfo info, StreamingContext context)
- IsRight
- IsLeft
- Select <B> (Func<R, B> f)
- SelectMany <B> (Func<R, EitherRight<B>> f)
- SelectMany <L, B> (Func<R, EitherLeft<L>> f)
- SelectMany <B, C> (Func<R, EitherRight<B>> bind, Func<R, B, C> project)
- SelectMany <L, C> (Func<R, EitherLeft<L>> bind, Func<R, Unit, C> project)
- SelectMany <L, B> (Func<R, Either<L, B>> f)
- SelectMany <L, B, C> (Func<R, Either<L, B>> bind, Func<R, B, C> project)
- < (EitherRight<R> lhs, EitherRight<R> rhs)
- <= (EitherRight<R> lhs, EitherRight<R> rhs)
- > (EitherRight<R> lhs, EitherRight<R> rhs)
- >= (EitherRight<R> lhs, EitherRight<R> rhs)
- == (EitherRight<R> lhs, EitherRight<R> rhs)
- != (EitherRight<R> lhs, EitherRight<R> rhs)
- ToString ()
- GetHashCode ()
- Equals (object obj)
- ToList ()
- ToArray ()
- ToSeq ()
- AsEnumerable ()
- ToOption ()
- ToTryOption ()
- | (EitherRight<R> lhs, EitherRight<R> rhs)
- | (EitherRight<R> lhs, EitherLeft<R> rhs)
- | (EitherLeft<R> lhs, EitherRight<R> rhs)
- true (EitherRight<R> value)
- false (EitherRight<R> value)
- CompareTo (EitherRight<R> other)
- CompareTo (R other)
- Equals (R other)
- Equals (EitherRight<R> other)
- GetUnderlyingType ()
- Count ()
- Iter (Action<R> Right)
- ForAll (Func<R, bool> Right)
- Fold <S> (S state, Func<S, R, S> Right)
- Exists (Func<R, bool> pred)
- Map <Ret> (Func<R, Ret> mapper)
- Bind <Ret> (Func<R, EitherRight<Ret>> f)
- Bind <L> ()
- Bind <L> (Func<R, EitherLeft<L>> f)
- Bind <L, B> (Func<R, Either<L, B>> f)
- Bind <L, B> (Func<R, EitherUnsafe<L, B>> f)
- MatchUntyped <TResult> (Func<object, TResult> Right, Func<object, TResult> Left)
- GetUnderlyingRightType ()
- GetUnderlyingLeftType ()
- EitherRightLeftExt
- SelectMany <L, R, B, C> (this Either<L, R> ma, Func<R, EitherRight<B>> bind, Func<R, B, C> project)
- SelectMany <L, R, C> (this Either<L, R> ma, Func<R, EitherRight<L>> bind, Func<R, Unit, C> project)
- Apply <A, B> (this EitherRight<Func<A, B>> mf, EitherRight<A> ma)
- Apply <A, B, C> (this EitherRight<Func<A, B, C>> mf, EitherRight<A> ma)
- Apply <A, B, C> (this EitherRight<Func<A, B, C>> mf, EitherRight<A> ma, EitherRight<B> mb)
- Apply <L, A, B> (this EitherRight<Func<A, B>> mf, Either<L, A> ma)
- Apply <L, A, B, C> (this EitherRight<Func<A, B, C>> mf, Either<L, A> ma)
- Apply <L, A, B, C> (this EitherRight<Func<A, B, C>> mf, Either<L, A> ma, Either<L, B> mb)
- EitherStatus
- IEither
- IEitherAsync
class EitherData Source #
class EitherData <L, R> Source #
field EitherData<L, R> Bottom = new EitherData<L, R>(EitherStatus.IsBottom, default(R), default(L)) Source #
constructor EitherData (EitherStatus state, R right, L left) Source #
method int GetHashCode () Source #
class EitherDataExtensions Source #
method EitherAsync<L, R> ToEitherAsync <L, R> (this EitherData<L, R> input) Source #
method Task<EitherAsync<L, R>> ToEitherAsync <L, R> (this Task<EitherData<L, R>> input) Source #
method Task<EitherAsync<L, R>> ToEitherAsync <L, R> (this ValueTask<EitherData<L, R>> input) Source #
method EitherUnsafe<L, R> ToEitherUnsafe <L, R> (this EitherData<L, R> input) Source #
method Task<TryAsync<A>> ToTryAsync <E, A> (this Task<EitherData<E, A>> input) Source #
method Task<TryAsync<A>> ToTryAsync <E, A> (this ValueTask<EitherData<E, A>> input) Source #
struct EitherLeft <L> Source #
method void GetObjectData (SerializationInfo info, StreamingContext context) Source #
method EitherLeft<L> SelectMany (Func<L, EitherLeft<L>> f) Source #
method Either<L, R> SelectMany <R, B> (Func<L, EitherLeft<R>> f) Source #
method EitherLeft<C> SelectMany <C> (Func<L, EitherLeft<L>> bind, Func<L, Unit, C> project) Source #
method Either<L, C> SelectMany <B, C> (Func<L, EitherLeft<B>> bind, Func<L, B, C> project) Source #
method Either<L, B> SelectMany <B> (Func<L, Either<L, B>> f) Source #
method Either<L, C> SelectMany <B, C> (Func<L, Either<L, B>> bind, Func<L, B, C> project) Source #
method int GetHashCode () Source #
method IEnumerable<L> AsEnumerable () Source #
method EitherUnsafe<L, R> ToEitherUnsafe <R> () Source #
method TResult MatchUntyped <TResult> (Func<object, TResult> Right, Func<object, TResult> Left) Source #
method Type GetUnderlyingRightType () Source #
method Type GetUnderlyingLeftType () Source #
struct EitherRight <R> Source #
method void GetObjectData (SerializationInfo info, StreamingContext context) Source #
method EitherRight<B> SelectMany <B> (Func<R, EitherRight<B>> f) Source #
method Either<L, B> SelectMany <L, B> (Func<R, EitherLeft<L>> f) Source #
method EitherRight<C> SelectMany <B, C> (Func<R, EitherRight<B>> bind, Func<R, B, C> project) Source #
method Either<L, C> SelectMany <L, C> (Func<R, EitherLeft<L>> bind, Func<R, Unit, C> project) Source #
method Either<L, B> SelectMany <L, B> (Func<R, Either<L, B>> f) Source #
method Either<L, C> SelectMany <L, B, C> (Func<R, Either<L, B>> bind, Func<R, B, C> project) Source #
method int GetHashCode () Source #
method IEnumerable<R> AsEnumerable () Source #
method TryOption<R> ToTryOption () Source #
method Type GetUnderlyingType () Source #
method TResult MatchUntyped <TResult> (Func<object, TResult> Right, Func<object, TResult> Left) Source #
method Type GetUnderlyingRightType () Source #
method Type GetUnderlyingLeftType () Source #
class EitherRightLeftExt Source #
method Either<L, C> SelectMany <L, R, B, C> (this Either<L, R> ma, Func<R, EitherRight<B>> bind, Func<R, B, C> project) Source #
method Either<L, C> SelectMany <L, R, C> (this Either<L, R> ma, Func<R, EitherRight<L>> bind, Func<R, Unit, C> project) Source #
method EitherRight<Func<B, C>> Apply <A, B, C> (this EitherRight<Func<A, B, C>> mf, EitherRight<A> ma) Source #
method EitherRight<C> Apply <A, B, C> (this EitherRight<Func<A, B, C>> mf, EitherRight<A> ma, EitherRight<B> mb) Source #
enum EitherStatus Source #
Possible states of an Either
interface IEitherAsync Source #