Ещё что-то типа checked exceptions, не знаю как правильно в свифте это называется - если метод бросает исключения и не обрабатывает их, то он обязательно должен помечаться как throws по всей иерархии вызовов пока не обработаешь
Ещё что-то типа checked exceptions, не знаю как правильно в свифте это называется - если метод бросает исключения и не обрабатывает их, то он обязательно должен помечаться как throws по всей иерархии вызовов пока не обработаешь