diff options
Diffstat (limited to 'spew/common.go')
| -rw-r--r-- | spew/common.go | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/spew/common.go b/spew/common.go index 6b8bfec..11ec612 100644 --- a/spew/common.go +++ b/spew/common.go @@ -150,11 +150,26 @@ func handleMethods(cs *ConfigState, w io.Writer, v reflect.Value) (handled bool) switch iface := viface.(type) { case error: defer catchPanic(w, v) + if cs.ContinueOnMethod { + w.Write(append(openParenBytes, []byte(iface.Error())...)) + w.Write(closeParenBytes) + w.Write(spaceBytes) + + return false + } + w.Write([]byte(iface.Error())) return true case fmt.Stringer: defer catchPanic(w, v) + if cs.ContinueOnMethod { + w.Write(append(openParenBytes, []byte(iface.String())...)) + w.Write(closeParenBytes) + w.Write(spaceBytes) + + return false + } w.Write([]byte(iface.String())) return true } |
