mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
PY-82119 Packaging: Rewrite Conda to use EEL
GitOrigin-RevId: 8329d24191bdc1411775dc8e58a65172a2804788
This commit is contained in:
committed by
intellij-monorepo-bot
parent
693c5014a8
commit
2c3a5a9f7a
@@ -5,6 +5,10 @@ import com.intellij.openapi.diagnostic.Logger
|
||||
import com.jetbrains.python.Result.Failure
|
||||
import com.jetbrains.python.Result.Success
|
||||
import com.jetbrains.python.errorProcessing.MessageError
|
||||
import com.jetbrains.python.errorProcessing.PyResult
|
||||
import com.jetbrains.python.packaging.PyExecutionException
|
||||
import kotlinx.coroutines.CancellationException
|
||||
import org.jetbrains.annotations.ApiStatus
|
||||
import org.jetbrains.annotations.Nls
|
||||
|
||||
/**
|
||||
@@ -113,6 +117,23 @@ sealed class Result<out SUCC, out ERR> {
|
||||
}
|
||||
}
|
||||
|
||||
@Suppress("UsagesOfObsoleteApi")
|
||||
@ApiStatus.Internal
|
||||
fun <T> pyRunCatching(body: () -> T): PyResult<T> {
|
||||
return try {
|
||||
PyResult.success(body())
|
||||
}
|
||||
catch (t: PyExecutionException) {
|
||||
PyResult.failure(t.pyError)
|
||||
}
|
||||
catch (t: CancellationException) {
|
||||
throw t
|
||||
}
|
||||
catch (t: IllegalArgumentException) {
|
||||
//Parse deserialization exceptions
|
||||
PyResult.localizedError(t.localizedMessage)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Maps success result to another one with same error
|
||||
|
||||
Reference in New Issue
Block a user