Left

data class Left<out A>(val value: A) : Either<A, Nothing>

The left side of the disjoint union, as opposed to the Right side.

Constructors

Link copied to clipboard
fun <out A> Left(value: A)

Types

Link copied to clipboard
object Companion

Functions

Link copied to clipboard
inline fun all(predicate: (Nothing) -> Boolean): Boolean

Returns true if Left or returns the result of the application of the given predicate to the Right value.

Link copied to clipboard
inline fun <C> bifoldLeft(    c: C,     f: (C, A) -> C,     g: (C, Nothing) -> C): C
Link copied to clipboard
inline fun <C> bifoldMap(    MN: Monoid<C>,     f: (A) -> C,     g: (Nothing) -> C): C
Link copied to clipboard
inline fun <C, D> bimap(leftOperation: (A) -> C, rightOperation: (right: Nothing) -> D): Either<C, D>

Map over Left and Right of this Either

Link copied to clipboard
inline fun <AA, C> bitraverse(fe: (A) -> Iterable<AA>, fa: (Nothing) -> Iterable<C>): List<Either<AA, C>>
Link copied to clipboard
inline fun <AA, C> bitraverseNullable(fl: (A) -> AA?, fr: (Nothing) -> C?): Either<AA, C>?
Link copied to clipboard
inline fun <AA, C> bitraverseOption(fl: (A) -> Option<AA>, fr: (Nothing) -> Option<C>): Option<Either<AA, C>>
Link copied to clipboard
inline fun <AA, C, D> bitraverseValidated(fe: (A) -> Validated<AA, C>, fa: (Nothing) -> Validated<AA, D>): Validated<AA, Either<C, D>>
Link copied to clipboard
inline fun exists(predicate: (Nothing) -> Boolean): Boolean

Returns false if Left or returns the result of the application of the given predicate to the Right value.

Link copied to clipboard
inline fun findOrNull(predicate: (Nothing) -> Boolean): Nothing?
Link copied to clipboard
inline fun <C> fold(ifLeft: (A) -> C, ifRight: (right: Nothing) -> C): C

Transform an Either into a value of C. Alternative to using when to fold an Either into a value C.

Link copied to clipboard
inline fun <C> foldLeft(initial: C, rightOperation: (C, Nothing) -> C): C
Link copied to clipboard
fun <C> foldMap(MN: Monoid<C>, f: (Nothing) -> C): C
Link copied to clipboard
fun getOrNone(): Option<Nothing>

Transforms Either into Option, where the encapsulated value B is wrapped in Some when this instance represents Either.Right, or None if it is Either.Left.

Link copied to clipboard
fun getOrNull(): Nothing?

Returns the encapsulated value B if this instance represents Either.Right or null if it is Either.Left.

Link copied to clipboard
fun isEmpty(): Boolean

Returns true if Left

Link copied to clipboard
fun isLeft(): Boolean
Link copied to clipboard
fun isNotEmpty(): Boolean

Returns true if Right

Link copied to clipboard
fun isRight(): Boolean
Link copied to clipboard
inline fun <C> map(f: (right: Nothing) -> C): Either<A, C>

Map, or transform, the right value B of this Either to a new value C.

Link copied to clipboard
inline fun <C> mapLeft(f: (A) -> C): Either<C, Nothing>

Map, or transform, the left value A of this Either to a new value C.

Link copied to clipboard
inline fun onLeft(action: (A) -> Unit): Either<A, Nothing>

Performs the given action on the encapsulated A if this instance represents Either.Left. Returns the original Either unchanged.

Link copied to clipboard
inline fun onRight(action: (right: Nothing) -> Unit): Either<A, Nothing>

Performs the given action on the encapsulated B value if this instance represents Either.Right. Returns the original Either unchanged.

Link copied to clipboard
fun orNone(): Option<Nothing>
Link copied to clipboard
fun orNull(): Nothing?
Link copied to clipboard
fun replicate(n: Int): Either<A, List<Nothing>>
Link copied to clipboard
fun swap(): Either<Nothing, A>

Swap the generic parameters A and B of this Either.

Link copied to clipboard
inline fun tap(f: (right: Nothing) -> Unit): Either<A, Nothing>
Link copied to clipboard
inline fun tapLeft(f: (A) -> Unit): Either<A, Nothing>
Link copied to clipboard
open override fun toString(): String
Link copied to clipboard
fun toValidated(): Validated<A, Nothing>
Link copied to clipboard
fun toValidatedNel(): ValidatedNel<A, Nothing>
Link copied to clipboard
inline fun <C> traverse(fa: (Nothing) -> Option<C>): Option<Either<A, C>>
inline fun <AA, C> traverse(fa: (Nothing) -> Validated<AA, C>): Validated<AA, Either<A, C>>
inline fun <C> traverse(fa: (Nothing) -> Iterable<C>): List<Either<A, C>>
Link copied to clipboard
inline fun <C> traverseNullable(fa: (Nothing) -> C?): Either<A, C>?
Link copied to clipboard
inline fun <C> traverseOption(fa: (Nothing) -> Option<C>): Option<Either<A, C>>
Link copied to clipboard
inline fun <AA, C> traverseValidated(fa: (Nothing) -> Validated<AA, C>): Validated<AA, Either<A, C>>
Link copied to clipboard
fun void(): Either<A, Unit>

Properties

Link copied to clipboard
val value: A