kotest-fp / io.kotest.fp / Try

Try

sealed class Try<out T>

Types

Failure

data class Failure : Try<Nothing>

Success

data class Success<T> : Try<T>

Functions

flatMap

fun <U> flatMap(f: (T) -> Try<U>): Try<U>

fold

fun <R> fold(ifFailure: (Throwable) -> R, ifSuccess: (T) -> R): R

getOrNull

fun getOrNull(): T?

getOrThrow

fun getOrThrow(): T

isFailure

fun isFailure(): Boolean

isSuccess

fun isSuccess(): Boolean

map

fun <U> map(f: (T) -> U): Try<U>

mapFailure

fun mapFailure(f: (Throwable) -> Throwable): Try<T>

onFailure

fun onFailure(f: (Throwable) -> Unit): Try<T>

onSuccess

fun onSuccess(f: (T) -> Unit): Try<T>

toOption

fun toOption(): Option<T>

Companion Object Functions

invoke

operator fun invoke(t: Throwable): Try<Unit>
operator fun <T> invoke(f: () -> T): Try<T>

Extension Functions

flatten

fun <T> Try<Try<T>>.flatten(): Try<T>

getOrElse

fun <U, T : U> Try<T>.getOrElse(f: (Throwable) -> U): U

recover

fun <U, T : U> Try<T>.recover(f: (Throwable) -> U): Try<U>

recoverWith

fun <U, T : U> Try<T>.recoverWith(f: (Throwable) -> Try<U>): Try<U>