package govalidator // Errors is an array of multiple errors and conforms to the error interface. type Errors []error // Errors returns itself. func (es Errors) Errors() []error { return es } func (es Errors) Error() string { var err string for _, e := range es { err += e.Error() + ";" } return err } // Error encapsulates a name, an error and whether there's a custom error message or not. type Error struct { Name string Err error CustomErrorMessageExists bool } func (e Error) Error() string { if e.CustomErrorMessageExists { return e.Err.Error() } return e.Name + ": " + e.Err.Error() }