дженериках для обработки ошибок?
type Result (type T any) struct {
Value T
Err error
}
func (r Result(T)) Map (success func(value T)) {
if r.Err == nil {
success(r.value)
}
}
И понеслась:
result.Map(func (v) {
// только успешный код
})
Там может есть какой-то красивый способ это сделать, чтобы не чувствовать боль колбэков...
Обработка ошибок != Игнор ошибок
Ну ясно, там есть варианты, я просто устал в чат писать. Можно отдать Err из Map для прокидывания "наверх" по стэку.
Обсуждают сегодня