mirror of
https://github.com/golang/go
synced 2024-11-17 00:24:48 -07:00
errors: improve the godoc for Join and Unwrap
Document that errors returned by Join always implement Unwrap []error.
Explicitly state that Unwrap does not unwrap errors
with an Unwrap() []error method.
Change-Id: Id610345dcf43ca54a9dde157e56c5815c5112073
GitHub-Last-Rev: 7a0ec450bd
GitHub-Pull-Request: golang/go#59301
Reviewed-on: https://go-review.googlesource.com/c/go/+/480021
Run-TryBot: Emmanuel Odeke <emmanuel@orijtech.com>
Auto-Submit: Emmanuel Odeke <emmanuel@orijtech.com>
Run-TryBot: Ian Lance Taylor <iant@google.com>
Reviewed-by: Ian Lance Taylor <iant@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Damien Neil <dneil@google.com>
This commit is contained in:
parent
443eb9757c
commit
c0fd7f79fe
@ -10,6 +10,8 @@ package errors
|
|||||||
// The error formats as the concatenation of the strings obtained
|
// The error formats as the concatenation of the strings obtained
|
||||||
// by calling the Error method of each element of errs, with a newline
|
// by calling the Error method of each element of errs, with a newline
|
||||||
// between each string.
|
// between each string.
|
||||||
|
//
|
||||||
|
// A non-nil error returned by Join implements the Unwrap() []error method.
|
||||||
func Join(errs ...error) error {
|
func Join(errs ...error) error {
|
||||||
n := 0
|
n := 0
|
||||||
for _, err := range errs {
|
for _, err := range errs {
|
||||||
|
@ -12,7 +12,8 @@ import (
|
|||||||
// type contains an Unwrap method returning error.
|
// type contains an Unwrap method returning error.
|
||||||
// Otherwise, Unwrap returns nil.
|
// Otherwise, Unwrap returns nil.
|
||||||
//
|
//
|
||||||
// Unwrap returns nil if the Unwrap method returns []error.
|
// Unwrap only calls a method of the form "Unwrap() error".
|
||||||
|
// In particular Unwrap does not unwrap errors returned by [Join].
|
||||||
func Unwrap(err error) error {
|
func Unwrap(err error) error {
|
||||||
u, ok := err.(interface {
|
u, ok := err.(interface {
|
||||||
Unwrap() error
|
Unwrap() error
|
||||||
|
Loading…
Reference in New Issue
Block a user