-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy patherrors.go
34 lines (26 loc) · 935 Bytes
/
errors.go
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
package flago
import (
"fmt"
)
func newParseTypeError(value, datatype string) error {
return fmt.Errorf("error at parsing value \"%s\" to datatype %s", value, datatype)
}
func newUnknownDataTypeError(datatype, name string) error {
return fmt.Errorf("unexpected datatype \"%s\" for flag of name %s", datatype, name)
}
func newMissingValueError(name string, i int) error {
return fmt.Errorf("the key: %s is trying to access missing item at index: %d", name, i)
}
func newCliError(cli *Cli) error {
return fmt.Errorf("available Subcommands: %v", cli.flagsetKeys())
}
type invalidFlagAsValueError struct {
name string
value string
}
func newInvalidFlagAsValueError(name, value string) *invalidFlagAsValueError {
return &invalidFlagAsValueError{name, value}
}
func (err *invalidFlagAsValueError) Error() string {
return fmt.Sprintf("Invalid value for flag: \"%s\", cannot use flag \"%s\" as value", err.name, err.value)
}