aboutsummaryrefslogtreecommitdiffstats
path: root/Godeps/_workspace/src/github.com/codegangsta/cli/cli.go
blob: 31dc9124d1eb6d1291cf94a4be695eb8ca945170 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
// Package cli provides a minimal framework for creating and organizing command line
// Go applications. cli is designed to be easy to understand and write, the most simple
// cli application can be written as follows:
//   func main() {
//     cli.NewApp().Run(os.Args)
//   }
//
// Of course this application does not do much, so let's make this an actual application:
//   func main() {
//     app := cli.NewApp()
//     app.Name = "greet"
//     app.Usage = "say a greeting"
//     app.Action = func(c *cli.Context) {
//       println("Greetings")
//     }
//
//     app.Run(os.Args)
//   }
package cli

import (
    "strings"
)

type MultiError struct {
    Errors []error
}

func NewMultiError(err ...error) MultiError {
    return MultiError{Errors: err}
}

func (m MultiError) Error() string {
    errs := make([]string, len(m.Errors))
    for i, err := range m.Errors {
        errs[i] = err.Error()
    }

    return strings.Join(errs, "\n")
}