Result

kotlin-stdlib / kotlin / Result
 

Platform and version requirements: JVM (1.3), JS (1.3), Native (1.3) 

inline class Result<out T> : Serializable 
 A discriminated union that encapsulates a successful outcome with a value of type T or a failure with an arbitrary Throwable exception. 
 Properties 

Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0) isFailure  Returns true if this instance represents a failed outcome. In this case isSuccess returns false. 
val isFailure: Boolean 
  
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0) isSuccess  Returns true if this instance represents a successful outcome. In this case isFailure returns false. 
val isSuccess: Boolean 
   Functions 

Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0) exceptionOrNull  Returns the encapsulated Throwable exception if this instance represents failure or null if it is success. 
fun exceptionOrNull(): Throwable? 
  
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0) getOrNull  Returns the encapsulated value if this instance represents success or null if it is failure. 
fun getOrNull(): T? 
  
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0) toString  Returns a string Success(v) if this instance represents success where v is a string representation of the value or a string Failure(x) if it is failure where x is a string representation of the exception. 
fun toString(): String 
   Companion Object Functions 

Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0) failure  Returns an instance that encapsulates the given Throwable as failure. 
fun <T> failure(exception: Throwable): Result<T> 
  
Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0) success  Returns an instance that encapsulates the given value as successful value. 
fun <T> success(value: T): Result<T> 
   Extension Functions 

Platform and version requirements: JVM (1.3), JS (1.3), Native (1.3) fold  Returns the result of onSuccess for the encapsulated value if this instance represents success or the result of onFailure function for the encapsulated Throwable exception if it is failure. 
fun <R, T> Result<T>.fold(
    onSuccess: (value: T) -> R, 
    onFailure: (exception: Throwable) -> R
): R 
  
Platform and version requirements: JVM (1.3), JS (1.3), Native (1.3) getOrDefault  Returns the encapsulated value if this instance represents success or the defaultValue if it is failure. 
fun <R, T : R> Result<T>.getOrDefault(defaultValue: R): R 
  
Platform and version requirements: JVM (1.3), JS (1.3), Native (1.3) getOrElse  Returns the encapsulated value if this instance represents success or the result of onFailure function for the encapsulated Throwable exception if it is failure. 
fun <R, T : R> Result<T>.getOrElse(
    onFailure: (exception: Throwable) -> R
): R 
  
Platform and version requirements: JVM (1.3), JS (1.3), Native (1.3) getOrThrow  Returns the encapsulated value if this instance represents success or throws the encapsulated Throwable exception if it is failure. 
fun <T> Result<T>.getOrThrow(): T 
  
Platform and version requirements: JVM (1.3), JS (1.3), Native (1.3) map  Returns the encapsulated result of the given transform function applied to the encapsulated value if this instance represents success or the original encapsulated Throwable exception if it is failure. 
fun <R, T> Result<T>.map(
    transform: (value: T) -> R
): Result<R> 
  
Platform and version requirements: JVM (1.3), JS (1.3), Native (1.3) mapCatching  Returns the encapsulated result of the given transform function applied to the encapsulated value if this instance represents success or the original encapsulated Throwable exception if it is failure. 
fun <R, T> Result<T>.mapCatching(
    transform: (value: T) -> R
): Result<R> 
  
Platform and version requirements: JVM (1.3), JS (1.3), Native (1.3) onFailure  Performs the given action on the encapsulated Throwable exception if this instance represents failure. Returns the original Result unchanged. 
fun <T> Result<T>.onFailure(
    action: (exception: Throwable) -> Unit
): Result<T> 
  
Platform and version requirements: JVM (1.3), JS (1.3), Native (1.3) onSuccess  Performs the given action on the encapsulated value if this instance represents success. Returns the original Result unchanged. 
fun <T> Result<T>.onSuccess(
    action: (value: T) -> Unit
): Result<T> 
  
Platform and version requirements: JVM (1.3), JS (1.3), Native (1.3) recover  Returns the encapsulated result of the given transform function applied to the encapsulated Throwable exception if this instance represents failure or the original encapsulated value if it is success. 
fun <R, T : R> Result<T>.recover(
    transform: (exception: Throwable) -> R
): Result<R> 
  
Platform and version requirements: JVM (1.3), JS (1.3), Native (1.3) recoverCatching  Returns the encapsulated result of the given transform function applied to the encapsulated Throwable exception if this instance represents failure or the original encapsulated value if it is success. 
fun <R, T : R> Result<T>.recoverCatching(
    transform: (exception: Throwable) -> R
): Result<R> 
  

    
{'path': 'public/docs/kotlin~1.7/api/latest/jvm/stdlib/kotlin/-result/index.html', 'source': 'DevDocs.IO'}