IsNil reports whether err is nil or contains a typed-nil value.
(err error)
| 6 | |
| 7 | // IsNil reports whether err is nil or contains a typed-nil value. |
| 8 | func IsNil(err error) bool { |
| 9 | if err == nil { |
| 10 | return true |
| 11 | } |
| 12 | |
| 13 | v := reflect.ValueOf(err) |
| 14 | switch v.Kind() { |
| 15 | case reflect.Chan, reflect.Func, reflect.Map, reflect.Pointer, reflect.Slice: |
| 16 | return v.IsNil() |
| 17 | default: |
| 18 | return false |
| 19 | } |
| 20 | } |
no outgoing calls
no test coverage detected