Wpis z mikrobloga

nil != nil...
mam taką zagwózdke/zagadke

mam metodę która w sygnaturze zwraca pointera do struktórki o nazwie RestError i ofc jak wszystko pójdzie dobrze to jest return nil
https://github.com/mkruczek/user-store/blob/main/repository/user/user.go#L23

tam gdzie owa metoda jest wywoływana, następuje sprawdzenie err!=nil
https://github.com/mkruczek/user-store/blob/main/domain/user/service/user/user.go#L50

i moje pytanie brzmi, dlaczego muszę dodatkowo w tym if-ie dodać err != (*errors.RestError)(nil) , bo bez tego sprawdzenie err != nil zwraca true (obrazek)

jedyne co udało mi się "ustalić" to że jak w lini 50 użyje nowej zmiennej err1 := s.repo.Save(&e) to działa tak jakbyśmy się tego spodziewali

ktoś może spotkał się z czymś takim i może mnie naprowadzić dlaczego tak się dzieje?

#golang
itsnotpossible - nil != nil...
mam taką zagwózdke/zagadke

mam metodę która w sygn...

źródło: comment_1614230638NZLAh79Ks2jLLLjRgmb2Q7.jpg

Pobierz
  • 3
  • Odpowiedz