MonadTrans<OuterMonad, OuterType, InnerMonad, InnerType, A> Interface

DECLARATION
public interface MonadTrans<OuterMonad, OuterType, InnerMonad, InnerType, A>
NAMESPACE
LanguageExt.TypeClasses

Methods

Bind<NewOuterMonad, NewOuterType, NewInnerMonad, NewInnerType, B>(OuterType, Func<A, NewOuterType>)
PARAMETERS
ma
OuterType
f
Func<A, NewOuterType>
DECLARATION
private NewOuterType Bind<NewOuterMonad, NewOuterType, NewInnerMonad, NewInnerType, B>(OuterType ma, Func<A, NewOuterType> f)
RETURNS
NewOuterType
CONSTRAINTS
where NewOuterMonad : struct Monad<NewOuterType, NewInnerType>
where NewInnerMonad : struct Monad<NewInnerType, B>
Bind<NewOuterMonad, NewOuterType, NewInnerMonad, NewInnerType, B>(OuterType, Func<A, NewInnerType>)
PARAMETERS
ma
OuterType
f
Func<A, NewInnerType>
DECLARATION
private NewOuterType Bind<NewOuterMonad, NewOuterType, NewInnerMonad, NewInnerType, B>(OuterType ma, Func<A, NewInnerType> f)
RETURNS
NewOuterType
CONSTRAINTS
where NewOuterMonad : struct Monad<NewOuterType, NewInnerType>
where NewInnerMonad : struct Monad<NewInnerType, B>
Fold<S>(OuterType, S, Func<S, A, S>)
PARAMETERS
ma
OuterType
state
S
f
Func<S, A, S>
DECLARATION
private S Fold<S>(OuterType ma, S state, Func<S, A, S> f)
RETURNS
S
FoldBack<S>(OuterType, S, Func<S, A, S>)
PARAMETERS
ma
OuterType
state
S
f
Func<S, A, S>
DECLARATION
private S FoldBack<S>(OuterType ma, S state, Func<S, A, S> f)
RETURNS
S
Map<NewOuterMonad, NewOuterType, NewInnerMonad, NewInnerType, B>(OuterType, Func<A, B>)
PARAMETERS
ma
OuterType
f
Func<A, B>
DECLARATION
private NewOuterType Map<NewOuterMonad, NewOuterType, NewInnerMonad, NewInnerType, B>(OuterType ma, Func<A, B> f)
RETURNS
NewOuterType
CONSTRAINTS
where NewOuterMonad : struct Monad<NewOuterType, NewInnerType>
where NewInnerMonad : struct Monad<NewInnerType, B>
Plus(OuterType, OuterType)
PARAMETERS
a
OuterType
b
OuterType
DECLARATION
private OuterType Plus(OuterType a, OuterType b)
RETURNS
OuterType
Sequence<NewOuterMonad, NewOuterType, NewInnerMonad, NewInnerType>(OuterType)
PARAMETERS
ma
OuterType
DECLARATION
private NewOuterType Sequence<NewOuterMonad, NewOuterType, NewInnerMonad, NewInnerType>(OuterType ma)
RETURNS
NewOuterType
CONSTRAINTS
where NewOuterMonad : struct Monad<NewOuterType, NewInnerType>
where NewInnerMonad : struct Monad<NewInnerType, A>
Traverse<NewOuterMonad, NewOuterType, NewInnerMonad, NewInnerType, B>(OuterType, Func<A, B>)
PARAMETERS
ma
OuterType
f
Func<A, B>
DECLARATION
private NewOuterType Traverse<NewOuterMonad, NewOuterType, NewInnerMonad, NewInnerType, B>(OuterType ma, Func<A, B> f)
RETURNS
NewOuterType
CONSTRAINTS
where NewOuterMonad : struct Monad<NewOuterType, NewInnerType>
where NewInnerMonad : struct Monad<NewInnerType, B>
Zero()
DECLARATION
private OuterType Zero()
RETURNS
OuterType