-
Notifications
You must be signed in to change notification settings - Fork 1
/
def.go
85 lines (75 loc) · 2.62 KB
/
def.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
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
package arg
import (
"encoding/json"
"net"
"time"
"github.com/Bofry/arg/content"
"github.com/shopspring/decimal"
)
const (
Ints = IntAssertion("")
UInts = UIntAssertion("")
Floats = FloatAssertion("")
Numbers = NumberAssertion("")
Decimals = DecimalAssertion("")
Strings = StringAssertion("")
Slices = SliceAssertion("")
Values = ValueAssertion("")
IPs = IPAssertion("")
Times = TimeAssertion("")
Durations = DurationAssertion("")
IntPtr = IntPtrAssertion("")
UIntPtr = UIntPtrAssertion("")
FloatPtr = FloatPtrAssertion("")
NumberPtr = NumberPtrAssertion("")
DecimalPtr = DecimalPtrAssertion("")
StringPtr = StringPtrAssertion("")
TimePtr = TimePtrAssertion("")
DurationPtr = DurationPtrAssertion("")
)
type (
Number = json.Number
Decimal = decimal.Decimal
IP = net.IP
)
type (
IntValidator func(v int64, name string) error
UIntValidator func(v uint64, name string) error
FloatValidator func(v float64, name string) error
StringValidator func(v string, name string) error
NumberValidator func(v Number, name string) error
DecimalValidator func(v Decimal, name string) error
ValueValidator func(v interface{}, name string) error
IPValidator func(v IP, name string) error
TimeValidator func(v time.Time, name string) error
DurationValidator func(v time.Duration, name string) error
IntPtrValidator func(v *int64, name string) error
UIntPtrValidator func(v *uint64, name string) error
FloatPtrValidator func(v *float64, name string) error
StringPtrValidator func(v *string, name string) error
NumberPtrValidator func(v *Number, name string) error
DecimalPtrValidator func(v *Decimal, name string) error
TimePtrValidator func(v *time.Time, name string) error
DurationPtrValidator func(v *time.Duration, name string) error
IntPredicate func(v int64) bool
UIntPredicate func(v uint64) bool
FloatPredicate func(v float64) bool
StringPredicate func(v string) bool
NumberPredicate func(v Number) bool
DecimalPredicate func(v Decimal) bool
ValuePredicate func(v interface{}) bool
IPPredicate func(v IP) bool
TimePredicate func(v time.Time) bool
DurationPredicate func(v time.Duration) bool
IntPtrPredicate func(v *int64) bool
UIntPtrPredicate func(v *uint64) bool
FloatPtrPredicate func(v *float64) bool
StringPtrPredicate func(v *string) bool
NumberPtrPredicate func(v *Number) bool
DecimalPtrPredicate func(v *Decimal) bool
TimePtrPredicate func(v *time.Time) bool
DurationPtrPredicate func(v *time.Duration) bool
)
type (
Validatable = content.Validatable
)