-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy patherrors.go
More file actions
102 lines (79 loc) · 1.95 KB
/
Copy patherrors.go
File metadata and controls
102 lines (79 loc) · 1.95 KB
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
package main
import (
"fmt"
)
type NotAPointerToStruct struct{}
func (NotAPointerToStruct) Error() string {
return "passed value is not a pointer to a struct"
}
type InvalidField struct {
Key string
}
func (e *InvalidField) Error() string {
return fmt.Sprintf("invalid settings for %s field", e.Key)
}
type MissingMainTag struct {
Key string
}
func (e *MissingMainTag) Error() string {
return fmt.Sprintf("missing `argparser` tag for %s field", e.Key)
}
type EmptyTag struct {
FieldName string
TagName string
}
func (e *EmptyTag) Error() string {
return fmt.Sprintf("tag `%s` is empty for %s field", e.TagName, e.FieldName)
}
type UnknownMainTagType struct {
FieldName string
Type string
}
func (e *UnknownMainTagType) Error() string {
return fmt.Sprintf("field %s have unknown main tag type: %s", e.FieldName, e.Type)
}
type NotValidTag struct {
FieldName string
TagName TagName
ErrorDesc string
}
func (e *NotValidTag) Error() string {
return fmt.Sprintf("field %s have not valid `%s` tag: %s", e.FieldName, e.TagName, e.ErrorDesc)
}
type HelpMessage struct {
Message string
}
func (e *HelpMessage) Error() string {
return e.Message
}
type NotEnoughRequiredArgs struct {
Expected int
Actual int
}
func (e *NotEnoughRequiredArgs) Error() string {
return fmt.Sprintf("not enougth args, expected: %d, actual: %d", e.Expected, e.Actual)
}
type ArgNotFound struct {
ArgType ArgType
Extra string
}
func (e *ArgNotFound) Error() string {
res := fmt.Sprintf("argument of type %s not passed to args", e.ArgType)
if e.ArgType != Arg {
res = fmt.Sprintf("%s: %s", res, e.Extra)
}
return res
}
type WrongArgValue struct {
ErrorDesc string
}
func (e *WrongArgValue) Error() string {
return fmt.Sprintf("wrong argument value: %s", e.ErrorDesc)
}
type WrongValueType struct {
Expected string
Actual string
}
func (e *WrongValueType) Error() string {
return fmt.Sprintf("value type differ from expected %s != %s", e.Expected, e.Actual)
}