【golang】errorsパッケージ New(), Unwrap(), Is(), As()の使い方と注意点

【golang】errorsパッケージ New(), Unwrap(), Is(), As()の使い方と注意点

前書き:君、err != nilしかできないの? Golangでは、errorがnilでなければ上位関数にそのままerrorを戻す処理が頻繁にあります。 f, err := os.Create(path) if err != nil { return err } 「エラーが発生した事実」を上位関数へ伝えるだけであれば、上記コードの対応で問題ありません。しかし、エラーの種類によって異なる対応をしたい場合は、nilチェックだけでは物足りません。 ...

December 13, 2021 · 12 min