с дефолтным значением?
Типа такого:
func log(err, fatal bool := false) {
if err != nil {
if fatal {
log.Fatal(err.Error())
}
fmt.Println(err.Error())
}
}
никак
вы сновп пхп тащите сюда?!
Подобным подходом не пользуются по многим причинам, и вообще в go принято работать с ошибками на месте их возникновения Что можно делать: Писать в лог Пробросить выше (рекомендуется оборачивать через fmt.Errorf("%w",...)) Проверить по иерархии (через errors.Is/As) И так далее
type SomeParams struct { Fatal bool }
аккуратней с лог.Фатал. он вроде ос.Ехет вызывает
никак но есть другой подход https://golang-blog.blogspot.com/2019/10/functional-options.html
ну и да, вам уже написали, но всё же: лучше fatal использовать только в main после того как все грейсфулы отработали смело паникуйте, если нужно )
Обсуждают сегодня