<init>
<init>(vararg exceptionClasses: KClass<out Throwable>)
Для Common
Эта аннотация указывает, какие исключения должны объявляться функцией при компиляции в метод платформы в Kotlin/JVM и Kotlin/Native.
Для Native
Эта аннотация указывает, какие исключения должны объявляться функцией при компиляции в метод платформы.
При компиляции в Objective-C/Swift фреймворк, функции, не являющиеся suspend, имеющие или унаследовавшие эту аннотацию, представляются как NSError*-производящие методы в Objective-C и как throws методы в Swift. Представления для suspend функций всегда имеют параметр NSError*/Error в обработчике завершения.
Когда функция Kotlin вызывается из Swift/Objective-C кода и генерирует исключение, являющееся экземпляром одного из исключений или их подклассов, оно распространяется как NSError. Другие исключения Kotlin, достигающие Swift/Objective-C, считаются необработанными и вызывают завершение программы.
Примечание: suspend функции без @Throws распространяют только kotlin.coroutines.cancellation.CancellationException как NSError. Не-suspend функции без @Throws не распространяют исключения Kotlin вообще.
© 2010–2023 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throws/-init-.html