Издатель с Never
в качестве типа ошибки означает, что он вообще не может выдавать ошибку. Он всегда будет содержать значение.
Чтобы получить издателя, который никогда не выдаст ошибки, у вас есть 2 решения:
1 / Перехват всех возможных ошибок:
let publisher: AnyPublisher<AnyType, SomeError> = //...
publisher.catch { error in
// handle the error here. The `catch` operator requires to
// return a "fallback value" as a publisher
return Just(/* ... */) // as an example
}
2/ Если вы уверены, что издатель не может выдать никаких ошибок, вы можете использовать .assertNoFailure()
, который преобразует вашего издателя. Обратите внимание, что при передаче .assertNoFailure()
произошла ошибка, ваше приложение немедленно вылетает.