Ответ
Функция, возвращающая Nothing, означает, что она никогда не завершается нормально — либо выбрасывает исключение, либо зацикливается. В Kotlin Nothing — это специальный тип, не имеющий значений, используемый для обозначения недостижимого кода.
Пример:
fun fail(message: String): Nothing {
throw IllegalArgumentException(message)
}
fun example() {
val result = fail("Error") // Тип result — Nothing
println("Unreachable") // Компилятор знает, что код недостижим
}
Используется для:
- Функций, всегда бросающих исключения (как
error()) - Бесконечных циклов
- Обозначения веток, которые никогда не выполнятся (например, в
whenс exhaustive проверкой)