orElse #
inline fun <TNewSuccess, TNewFailure, TSuccess : TNewSuccess, TFailure> PragmaResult<TSuccess, TFailure>.orElse(onFailure: (TFailure) -> PragmaResult<TNewSuccess, TNewFailure>): PragmaResult<TNewSuccess, TNewFailure>
Returns the result of the given onFailure function applied to the encapsulated TFailure if this instance represents failure or the original encapsulated value if it is success.