runSuspendCatching

inline suspend fun <T> runSuspendCatching(block: suspend () -> T): Result<T>

Coroutine-safe alternative to runCatching.

Like runCatching, executes block and wraps the result in Result, but rethrows CancellationException instead of wrapping it. This preserves structured concurrency cancellation semantics.

See kotlinx.coroutines#1814.