runCatching

inline fun <T> runCatching(block: () -> T): OperationResult<T>
inline fun <T, R> T.runCatching(block: T.() -> R): OperationResult<R>