# EitherT

`@higherkind data class EitherT<F, A, B>`

EitherT`<F, A, B>` is a light wrapper on an `F<`Either`<A, B>>` with some convenient methods for working with this nested structure.

It may also be said that EitherT is a monad transformer for Either.

### Constructors

 EitherT`` is a light wrapper on an `F<`Either`>` with some convenient methods for working with this nested structure.`EitherT(value: Kind>)`

### Functions

 ap `fun ap(AF: Applicative, ff: C>): ``EitherT``` cata `fun cata(FF: Functor, l: (A) -> C, r: (B) -> C): Kind` combineK `fun combineK(MF: Monad, y: ): ``EitherT``` exists `fun exists(FF: Functor, p: (B) -> ``Boolean``): Kind` flatMap `fun flatMap(MF: Monad, f: (B) -> ): ``EitherT``` flatMapF `fun flatMapF(MF: Monad, f: (B) -> Kind>): ``EitherT``` fold `fun fold(FF: Functor, l: (A) -> C, r: (B) -> C): Kind` liftF `fun liftF(FF: Functor, fa: Kind): ``EitherT``` map `fun map(FF: Functor, f: (B) -> C): ``EitherT``` mapLeft `fun mapLeft(FF: Functor, f: (A) -> C): ``EitherT``` semiflatMap `fun semiflatMap(MF: Monad, f: (B) -> Kind): ``EitherT``` subflatMap `fun subflatMap(FF: Functor, f: (B) -> Either): ``EitherT``` toOptionT `fun toOptionT(FF: Functor): ``OptionT``` transform `fun transform(FF: Functor, f: (Either) -> Either): ``EitherT``` value `fun value(): Kind>`

### Companion Object Functions

 fromEither `fun fromEither(AP: Applicative, value: Either): ``EitherT``` invoke `operator fun invoke(value: Kind>): ``EitherT``` just `fun just(MF: Applicative, b: B): ``EitherT``` left `fun left(MF: Applicative, a: A): ``EitherT``` liftF `fun liftF(FF: Functor, fa: Kind): ``EitherT``` right `fun right(MF: Applicative, b: B): ``EitherT``` tailRecM `fun tailRecM(MF: Monad, a: A, f: (A) -> >): ``EitherT```

Do you like Arrow?

<