requireIs

inline fun <R, T> ApiResult<T>.requireIs(exception: (T) -> Exception = { value -> "Result value is of type ${value?.let { it::class.simpleName }} but expected ${R::class.simpleName}" .let(::ConditionNotSatisfiedException) }): ApiResult<R>

Return

if this result value is R, then returns it. If not, returns an ApiResult.Error