github.com/cloudfoundry/cli@v7.1.0+incompatible/command/translatableerror/multi_error.go (about)

     1  package translatableerror
     2  
     3  import (
     4  	"fmt"
     5  	"strings"
     6  )
     7  
     8  type MultiError struct {
     9  	Messages []string
    10  }
    11  
    12  func (MultiError) Error() string {
    13  	return "Multiple errors occurred:\n{{.Errors}}"
    14  }
    15  
    16  func (e MultiError) Translate(translate func(string, ...interface{}) string) string {
    17  	var formattedErrs []string
    18  	for _, err := range e.Messages {
    19  		formattedErrs = append(formattedErrs, fmt.Sprintf("- %s", err))
    20  	}
    21  	return translate(e.Error(), map[string]interface{}{
    22  		"Errors": strings.Join(formattedErrs, "\n"),
    23  	})
    24  }