Avoid back and forth conversion between strings and bytes.

Signed-off-by: Anusha Ragunathan <anusha@docker.com>
(cherry picked from commit d6d448aab8)
This commit is contained in:
Anusha Ragunathan 2016-06-15 09:17:05 -07:00 committed by Tibor Vass
parent 41d72e28c3
commit d2a9560e71
1 changed files with 8 additions and 9 deletions

View File

@ -1,21 +1,20 @@
package cli
import "bytes"
import "strings"
// Errors is a list of errors.
// Useful in a loop if you don't want to return the error right away and you want to display after the loop,
// all the errors that happened during the loop.
type Errors []error
func (errs Errors) Error() string {
if len(errs) < 1 {
func (errList Errors) Error() string {
if len(errList) < 1 {
return ""
}
var buf bytes.Buffer
buf.WriteString(errs[0].Error())
for _, err := range errs[1:] {
buf.WriteString(", ")
buf.WriteString(err.Error())
out := make([]string, len(errList))
for i := range errList {
out[i] = errList[i].Error()
}
return buf.String()
return strings.Join(out, ", ")
}