Комментарии 8
Больше интересно как вы там без try catch с runtime error живёте :) и что делаете, если у вас у вас есть дубликат в diffable data source? :)
try/catch в Swift очень даже есть
Но не для runtime exception, если функция не выбрасывает исключение, перехватить его нельзя. Как раз если diffable data source имеет duplicate, то перехватить его нельзя, будет краш в runtime, так себе try catch, не находите?
Это достаточно обычная проблема, когда в Swift используется что-то из Objective-C. Если какой-то Objective-C код падает в рантайме, то можно обернуть его в другой Objective-C код, который это отловит. Тыц
Или от меня скриншот

Спасибо, я не swift разраб, этого не знал, но это же не swift по идее, так что конечно спорно, но спасибо!
Сам враппер пишется на Objective-C, но его можно использовать внутри Swift.
Например, у меня на скриншоте с кодом на Swift в 56 строке используется tryBlock
из Objective-C. А сам код Objective-C со Stack Overflow. Поэтому, мы можем писать врапперы для Objective-C в Objective-C и потом использовать в Swift
internal прямо хороший модификатор организовывать пакеты, и не раскрывать классы как внутреннюю часть пакета
Уровни доступа в Swift: Как Держать Всё под Контролем