Documentation ¶
Overview ¶
Package arg implements functions to validate arguments. * * Synopsis: * var ( * host string = "127.0.0.1" * status string = "connecting" * requests int64 = 99 * ) * * err := arg.Assert( * arg.Strings.Assert(host, "host", * arg.Strings.NonEmpty, * ), * arg.Strings.Assert(status, "status", * arg.Strings.NonEmpty, * arg.Strings.In("connecting", "closed", "aborted"), * ), * arg.Ints.Assert(requests, "requrests", * arg.Ints.NonNegativeInteger, * ), * ) * fmt.Println(err) // Output: <nil> * * The Strings, Floats, Ints, Numbers, Values also offer `Assertor()`: * * err := arg.Strings.Assertor(host, "host"). * Assert( * arg.Strings.NonEmpty, * ) * * is preferable to * * err := arg.Strings.Assert(host, "host", * arg.Strings.NonEmpty, * )
Example ¶
package main import ( "fmt" "github.com/Bofry/arg" ) func main() { var ( host string = "127.0.0.1" status string = "connecting" requests int64 = 99 ) err := arg.Assert( arg.Strings.Assert(host, "host", arg.Strings.NonEmpty, ), arg.Strings.Assert(status, "status", arg.Strings.NonEmpty, arg.Strings.In("connecting", "closed", "aborted"), ), arg.Ints.Assert(requests, "requrests", arg.Ints.NonNegativeInteger, ), ) fmt.Println(err) }
Output: <nil>
Index ¶
- Constants
- func Args(target interface{}, opts ...content.ProcessorOption) *content.Processor
- func Assert(errs ...error) error
- func AssertFunc(functions ...func() error) error
- func ThrowError(name, reason string) error
- type DurationAssertion
- func (DurationAssertion) Assert(v time.Duration, name string, validators ...DurationValidator) error
- func (DurationAssertion) Assertor(v time.Duration, name string) *DurationAssertor
- func (DurationAssertion) BetweenRange(min, max time.Duration) DurationValidator
- func (DurationAssertion) BetweenRangeByString(min, max string) DurationValidator
- func (DurationAssertion) GreaterOrEqual(boundary time.Duration) DurationValidator
- func (DurationAssertion) GreaterOrEqualByString(durationBoundary string) DurationValidator
- func (DurationAssertion) LessOrEqual(boundary time.Duration) DurationValidator
- func (DurationAssertion) LessOrEqualByString(durationBoundary string) DurationValidator
- func (DurationAssertion) Must(fn DurationPredicate) DurationValidator
- func (DurationAssertion) NonNegative(v time.Duration, name string) error
- func (DurationAssertion) NonZero(v time.Duration, name string) error
- type DurationAssertor
- type DurationPredicate
- type DurationPtrAssertion
- func (DurationPtrAssertion) Assert(v *time.Duration, name string, validators ...DurationPtrValidator) error
- func (DurationPtrAssertion) Assertor(v *time.Duration, name string) *DurationPtrAssertor
- func (DurationPtrAssertion) BetweenRange(min, max time.Duration) DurationPtrValidator
- func (DurationPtrAssertion) GreaterOrEqual(boundary time.Duration) DurationPtrValidator
- func (DurationPtrAssertion) LessOrEqual(boundary time.Duration) DurationPtrValidator
- func (DurationPtrAssertion) Must(fn DurationPtrPredicate) DurationPtrValidator
- func (DurationPtrAssertion) MustNil(v *time.Duration, name string) error
- func (DurationPtrAssertion) NonNegative(ptr *time.Duration, name string) error
- func (DurationPtrAssertion) NonZero(ptr *time.Duration, name string) error
- func (DurationPtrAssertion) NotNil(v *time.Duration, name string) error
- type DurationPtrAssertor
- type DurationPtrPredicate
- type DurationPtrValidator
- type DurationValidator
- type FloatAssertion
- func (FloatAssertion) Assert(v float64, name string, validators ...FloatValidator) error
- func (FloatAssertion) Assertor(v float64, name string) *FloatAssertor
- func (FloatAssertion) BetweenRange(min, max float64) FloatValidator
- func (FloatAssertion) Greater(comparand float64) FloatValidator
- func (FloatAssertion) GreaterOrEqual(comparand float64) FloatValidator
- func (FloatAssertion) Less(comparand float64) FloatValidator
- func (FloatAssertion) LessOrEqual(comparand float64) FloatValidator
- func (FloatAssertion) Must(fn FloatPredicate) FloatValidator
- func (FloatAssertion) NonNanNorInf(v float64, name string) error
- func (FloatAssertion) NonNegativeNumber(v float64, name string) error
- func (FloatAssertion) NonZero(v float64, name string) error
- type FloatAssertor
- type FloatPredicate
- type FloatPtrAssertion
- func (FloatPtrAssertion) Assert(v *float64, name string, validators ...FloatPtrValidator) error
- func (FloatPtrAssertion) Assertor(v *float64, name string) *FloatPtrAssertor
- func (FloatPtrAssertion) BetweenRange(min, max float64) FloatPtrValidator
- func (FloatPtrAssertion) Greater(comparand float64) FloatPtrValidator
- func (FloatPtrAssertion) GreaterOrEqual(comparand float64) FloatPtrValidator
- func (FloatPtrAssertion) Less(comparand float64) FloatPtrValidator
- func (FloatPtrAssertion) LessOrEqual(comparand float64) FloatPtrValidator
- func (FloatPtrAssertion) Must(fn FloatPtrPredicate) FloatPtrValidator
- func (FloatPtrAssertion) MustNil(v *float64, name string) error
- func (FloatPtrAssertion) NonNanNorInf(ptr *float64, name string) error
- func (FloatPtrAssertion) NonNegativeNumber(ptr *float64, name string) error
- func (FloatPtrAssertion) NonZero(ptr *float64, name string) error
- func (FloatPtrAssertion) NotNil(v *float64, name string) error
- type FloatPtrAssertor
- type FloatPtrPredicate
- type FloatPtrValidator
- type FloatValidator
- type IP
- type IPAssertion
- func (IPAssertion) Assert(v IP, name string, validators ...IPValidator) error
- func (IPAssertion) Assertor(v IP, name string) *IPAssertor
- func (IPAssertion) BelongToAny(cidrs ...string) IPValidator
- func (IPAssertion) GlobalUnicast(v IP, name string) error
- func (IPAssertion) InterfaceLocalMulticast(v IP, name string) error
- func (IPAssertion) IsValid(v IP, name string) error
- func (IPAssertion) LinkLocalMulticast(v IP, name string) error
- func (IPAssertion) LinkLocalUnicast(v IP, name string) error
- func (IPAssertion) Loopback(v IP, name string) error
- func (IPAssertion) Multicast(v IP, name string) error
- func (IPAssertion) Must(fn IPPredicate) IPValidator
- func (IPAssertion) NotBelongToAny(cidrs ...string) IPValidator
- func (IPAssertion) NotGlobalUnicast(v IP, name string) error
- func (IPAssertion) NotInterfaceLocalMulticast(v IP, name string) error
- func (IPAssertion) NotLinkLocalMulticast(v IP, name string) error
- func (IPAssertion) NotLinkLocalUnicast(v IP, name string) error
- func (IPAssertion) NotLoopback(v IP, name string) error
- func (IPAssertion) NotMulticast(v IP, name string) error
- func (IPAssertion) NotPrivate(v IP, name string) error
- func (IPAssertion) NotUnspecified(v IP, name string) error
- func (IPAssertion) Private(v IP, name string) error
- func (IPAssertion) Unspecified(v IP, name string) error
- type IPAssertor
- type IPPredicate
- type IPValidator
- type IntAssertion
- func (IntAssertion) Assert(v int64, name string, validators ...IntValidator) error
- func (IntAssertion) Assertor(v int64, name string) *IntAssertor
- func (IntAssertion) BetweenRange(min, max int64) IntValidator
- func (IntAssertion) GreaterOrEqual(boundary int64) IntValidator
- func (IntAssertion) In(values ...int64) IntValidator
- func (IntAssertion) LessOrEqual(boundary int64) IntValidator
- func (IntAssertion) Must(fn IntPredicate) IntValidator
- func (IntAssertion) NonNegativeInteger(v int64, name string) error
- func (IntAssertion) NonZero(v int64, name string) error
- func (IntAssertion) NotIn(values ...int64) IntValidator
- type IntAssertor
- type IntPredicate
- type IntPtrAssertion
- func (IntPtrAssertion) Assert(v *int64, name string, validators ...IntPtrValidator) error
- func (IntPtrAssertion) Assertor(v *int64, name string) *IntPtrAssertor
- func (IntPtrAssertion) BetweenRange(min, max int64) IntPtrValidator
- func (IntPtrAssertion) GreaterOrEqual(boundary int64) IntPtrValidator
- func (IntPtrAssertion) In(values ...int64) IntPtrValidator
- func (IntPtrAssertion) LessOrEqual(boundary int64) IntPtrValidator
- func (IntPtrAssertion) Must(fn IntPtrPredicate) IntPtrValidator
- func (IntPtrAssertion) MustNil(v *int64, name string) error
- func (IntPtrAssertion) NonNegativeInteger(ptr *int64, name string) error
- func (IntPtrAssertion) NonZero(ptr *int64, name string) error
- func (IntPtrAssertion) NotIn(values ...int64) IntPtrValidator
- func (IntPtrAssertion) NotNil(v *int64, name string) error
- type IntPtrAssertor
- type IntPtrPredicate
- type IntPtrValidator
- type IntValidator
- type InvalidArgumentError
- type Number
- type NumberAssertion
- func (NumberAssertion) Assert(v Number, name string, validators ...NumberValidator) error
- func (NumberAssertion) Assertor(v Number, name string) *NumberAssertor
- func (NumberAssertion) BetweenRange(min, max float64) NumberValidator
- func (NumberAssertion) Greater(comparand float64) NumberValidator
- func (NumberAssertion) GreaterOrEqual(comparand float64) NumberValidator
- func (NumberAssertion) IsNumber(v Number, name string) error
- func (NumberAssertion) Less(comparand float64) NumberValidator
- func (NumberAssertion) LessOrEqual(comparand float64) NumberValidator
- func (NumberAssertion) Must(fn NumberPredicate) NumberValidator
- func (NumberAssertion) MustFloat(fn FloatPredicate) NumberValidator
- func (NumberAssertion) MustInt(fn IntPredicate) NumberValidator
- func (NumberAssertion) NonNanNorInf(v Number, name string) error
- func (NumberAssertion) NonNegativeNumber(v Number, name string) error
- func (NumberAssertion) NonZero(v Number, name string) error
- func (NumberAssertion) NotIn(values ...int64) NumberValidator
- type NumberAssertor
- type NumberPredicate
- type NumberPtrAssertion
- func (NumberPtrAssertion) Assert(v *Number, name string, validators ...NumberPtrValidator) error
- func (NumberPtrAssertion) Assertor(v *Number, name string) *NumberPtrAssertor
- func (NumberPtrAssertion) BetweenRange(min, max float64) NumberPtrValidator
- func (NumberPtrAssertion) Greater(comparand float64) NumberPtrValidator
- func (NumberPtrAssertion) GreaterOrEqual(comparand float64) NumberPtrValidator
- func (NumberPtrAssertion) IsNumber(ptr *Number, name string) error
- func (NumberPtrAssertion) Less(comparand float64) NumberPtrValidator
- func (NumberPtrAssertion) LessOrEqual(comparand float64) NumberPtrValidator
- func (NumberPtrAssertion) Must(fn NumberPtrPredicate) NumberPtrValidator
- func (NumberPtrAssertion) MustFloat(fn FloatPredicate) NumberPtrValidator
- func (NumberPtrAssertion) MustInt(fn IntPredicate) NumberPtrValidator
- func (NumberPtrAssertion) MustNil(v *Number, name string) error
- func (NumberPtrAssertion) NonNanNorInf(ptr *Number, name string) error
- func (NumberPtrAssertion) NonNegativeNumber(ptr *Number, name string) error
- func (NumberPtrAssertion) NonZero(ptr *Number, name string) error
- func (NumberPtrAssertion) NotIn(values ...int64) NumberPtrValidator
- func (NumberPtrAssertion) NotNil(v *Number, name string) error
- type NumberPtrAssertor
- type NumberPtrPredicate
- type NumberPtrValidator
- type NumberValidator
- type SliceAssertion
- type StringAssertion
- func (StringAssertion) Assert(v string, name string, validators ...StringValidator) error
- func (StringAssertion) Assertor(v string, name string) *StringAssertor
- func (StringAssertion) In(values ...string) StringValidator
- func (StringAssertion) MatchAny(patterns ...string) StringValidator
- func (StringAssertion) MaxLength(size int) StringValidator
- func (StringAssertion) MinLength(size int) StringValidator
- func (StringAssertion) Must(fn StringPredicate) StringValidator
- func (StringAssertion) NonEmpty(v string, name string) error
- type StringAssertor
- type StringPredicate
- type StringPtrAssertion
- func (StringPtrAssertion) Assert(v *string, name string, validators ...StringPtrValidator) error
- func (StringPtrAssertion) Assertor(v *string, name string) *StringPtrAssertor
- func (StringPtrAssertion) In(values ...string) StringPtrValidator
- func (StringPtrAssertion) MatchAny(patterns ...string) StringPtrValidator
- func (StringPtrAssertion) MaxLength(size int) StringPtrValidator
- func (StringPtrAssertion) MinLength(size int) StringPtrValidator
- func (StringPtrAssertion) Must(fn StringPtrPredicate) StringPtrValidator
- func (StringPtrAssertion) MustNil(v *string, name string) error
- func (StringPtrAssertion) NonEmpty(ptr *string, name string) error
- func (StringPtrAssertion) NotNil(v *string, name string) error
- type StringPtrAssertor
- type StringPtrPredicate
- type StringPtrValidator
- type StringValidator
- type TimeAssertion
- func (TimeAssertion) AfterOrEqual(boundary time.Time) TimeValidator
- func (TimeAssertion) Assert(v time.Time, name string, validators ...TimeValidator) error
- func (TimeAssertion) Assertor(v time.Time, name string) *TimeAssertor
- func (TimeAssertion) BeforeOrEqual(boundary time.Time) TimeValidator
- func (TimeAssertion) BetweenRange(min, max time.Time) TimeValidator
- func (TimeAssertion) InWeekday(values ...time.Weekday) TimeValidator
- func (TimeAssertion) IsUTC(v time.Time, name string) error
- func (TimeAssertion) Must(fn TimePredicate) TimeValidator
- func (TimeAssertion) NonZero(v time.Time, name string) error
- func (TimeAssertion) NotInWeekday(values ...time.Weekday) TimeValidator
- type TimeAssertor
- type TimePredicate
- type TimePtrAssertion
- func (TimePtrAssertion) AfterOrEqual(boundary time.Time) TimePtrValidator
- func (TimePtrAssertion) Assert(v *time.Time, name string, validators ...TimePtrValidator) error
- func (TimePtrAssertion) Assertor(v *time.Time, name string) *TimePtrAssertor
- func (TimePtrAssertion) BeforeOrEqual(boundary time.Time) TimePtrValidator
- func (TimePtrAssertion) BetweenRange(min, max time.Time) TimePtrValidator
- func (TimePtrAssertion) InWeekday(values ...time.Weekday) TimePtrValidator
- func (TimePtrAssertion) IsUTC(ptr *time.Time, name string) error
- func (TimePtrAssertion) Must(fn TimePtrPredicate) TimePtrValidator
- func (TimePtrAssertion) MustNil(v *time.Time, name string) error
- func (TimePtrAssertion) NonZero(ptr *time.Time, name string) error
- func (TimePtrAssertion) NotInWeekday(values ...time.Weekday) TimePtrValidator
- func (TimePtrAssertion) NotNil(v *time.Time, name string) error
- type TimePtrAssertor
- type TimePtrPredicate
- type TimePtrValidator
- type TimeValidator
- type UIntAssertion
- func (UIntAssertion) Assert(v uint64, name string, validators ...UIntValidator) error
- func (UIntAssertion) Assertor(v uint64, name string) *UIntAssertor
- func (UIntAssertion) BetweenRange(min, max uint64) UIntValidator
- func (UIntAssertion) GreaterOrEqual(boundary uint64) UIntValidator
- func (UIntAssertion) In(values ...uint64) UIntValidator
- func (UIntAssertion) LessOrEqual(boundary uint64) UIntValidator
- func (UIntAssertion) Must(fn UIntPredicate) UIntValidator
- func (UIntAssertion) NonZero(v uint64, name string) error
- func (UIntAssertion) NotIn(values ...uint64) UIntValidator
- type UIntAssertor
- type UIntPredicate
- type UIntPtrAssertion
- func (UIntPtrAssertion) Assert(v *uint64, name string, validators ...UIntPtrValidator) error
- func (UIntPtrAssertion) Assertor(v *uint64, name string) *UIntPtrAssertor
- func (UIntPtrAssertion) BetweenRange(min, max uint64) UIntPtrValidator
- func (UIntPtrAssertion) GreaterOrEqual(boundary uint64) UIntPtrValidator
- func (UIntPtrAssertion) In(values ...uint64) UIntPtrValidator
- func (UIntPtrAssertion) LessOrEqual(boundary uint64) UIntPtrValidator
- func (UIntPtrAssertion) Must(fn UIntPtrPredicate) UIntPtrValidator
- func (UIntPtrAssertion) MustNil(v *uint64, name string) error
- func (UIntPtrAssertion) NonZero(ptr *uint64, name string) error
- func (UIntPtrAssertion) NotIn(values ...uint64) UIntPtrValidator
- func (UIntPtrAssertion) NotNil(v *uint64, name string) error
- type UIntPtrAssertor
- type UIntPtrPredicate
- type UIntPtrValidator
- type UIntValidator
- type Validatable
- type ValueAssertion
- func (ValueAssertion) Assert(v interface{}, name string, validators ...ValueValidator) error
- func (ValueAssertion) Assertor(v interface{}, name string) *ValueAssertor
- func (ValueAssertion) Must(fn ValuePredicate) ValueValidator
- func (ValueAssertion) MustNil(v interface{}, name string) error
- func (ValueAssertion) NotNil(v interface{}, name string) error
- type ValueAssertor
- type ValuePredicate
- type ValueValidator
Examples ¶
Constants ¶
const ( Ints = IntAssertion("") UInts = UIntAssertion("") Floats = FloatAssertion("") Numbers = NumberAssertion("") Strings = StringAssertion("") Slices = SliceAssertion("") Values = ValueAssertion("") IPs = IPAssertion("") Times = TimeAssertion("") Durations = DurationAssertion("") IntPtr = IntPtrAssertion("") UIntPtr = UIntPtrAssertion("") FloatPtr = FloatPtrAssertion("") NumberPtr = NumberPtrAssertion("") StringPtr = StringPtrAssertion("") TimePtr = TimePtrAssertion("") DurationPtr = DurationPtrAssertion("") )
const (
EmailPattern = `^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$`
)
Variables ¶
This section is empty.
Functions ¶
func Args ¶ added in v0.2.3
func Args(target interface{}, opts ...content.ProcessorOption) *content.Processor
func AssertFunc ¶ added in v0.2.3
func ThrowError ¶
Types ¶
type DurationAssertion ¶ added in v0.2.1
type DurationAssertion string
func (DurationAssertion) Assert ¶ added in v0.2.1
func (DurationAssertion) Assert(v time.Duration, name string, validators ...DurationValidator) error
func (DurationAssertion) Assertor ¶ added in v0.2.1
func (DurationAssertion) Assertor(v time.Duration, name string) *DurationAssertor
func (DurationAssertion) BetweenRange ¶ added in v0.2.1
func (DurationAssertion) BetweenRange(min, max time.Duration) DurationValidator
BetweenRange checks if given time.Duration is between the specified minimum and maximum values (both inclusive).
func (DurationAssertion) BetweenRangeByString ¶ added in v0.2.1
func (DurationAssertion) BetweenRangeByString(min, max string) DurationValidator
BetweenRange checks if given time.Duration is between the specified minimum and maximum values (both inclusive).
func (DurationAssertion) GreaterOrEqual ¶ added in v0.2.1
func (DurationAssertion) GreaterOrEqual(boundary time.Duration) DurationValidator
func (DurationAssertion) GreaterOrEqualByString ¶ added in v0.2.1
func (DurationAssertion) GreaterOrEqualByString(durationBoundary string) DurationValidator
func (DurationAssertion) LessOrEqual ¶ added in v0.2.1
func (DurationAssertion) LessOrEqual(boundary time.Duration) DurationValidator
func (DurationAssertion) LessOrEqualByString ¶ added in v0.2.1
func (DurationAssertion) LessOrEqualByString(durationBoundary string) DurationValidator
func (DurationAssertion) Must ¶ added in v0.2.1
func (DurationAssertion) Must(fn DurationPredicate) DurationValidator
func (DurationAssertion) NonNegative ¶ added in v0.2.1
func (DurationAssertion) NonNegative(v time.Duration, name string) error
type DurationAssertor ¶ added in v0.2.1
type DurationAssertor struct {
// contains filtered or unexported fields
}
func (*DurationAssertor) Assert ¶ added in v0.2.1
func (asr *DurationAssertor) Assert(validators ...DurationValidator) error
type DurationPredicate ¶ added in v0.2.1
type DurationPtrAssertion ¶ added in v0.2.1
type DurationPtrAssertion string
func (DurationPtrAssertion) Assert ¶ added in v0.2.1
func (DurationPtrAssertion) Assert(v *time.Duration, name string, validators ...DurationPtrValidator) error
func (DurationPtrAssertion) Assertor ¶ added in v0.2.1
func (DurationPtrAssertion) Assertor(v *time.Duration, name string) *DurationPtrAssertor
func (DurationPtrAssertion) BetweenRange ¶ added in v0.2.1
func (DurationPtrAssertion) BetweenRange(min, max time.Duration) DurationPtrValidator
BetweenRange checks if given time.Duration is between the specified minimum and maximum values (both inclusive).
func (DurationPtrAssertion) GreaterOrEqual ¶ added in v0.2.1
func (DurationPtrAssertion) GreaterOrEqual(boundary time.Duration) DurationPtrValidator
func (DurationPtrAssertion) LessOrEqual ¶ added in v0.2.1
func (DurationPtrAssertion) LessOrEqual(boundary time.Duration) DurationPtrValidator
func (DurationPtrAssertion) Must ¶ added in v0.2.1
func (DurationPtrAssertion) Must(fn DurationPtrPredicate) DurationPtrValidator
func (DurationPtrAssertion) MustNil ¶ added in v0.2.3
func (DurationPtrAssertion) MustNil(v *time.Duration, name string) error
func (DurationPtrAssertion) NonNegative ¶ added in v0.2.1
func (DurationPtrAssertion) NonNegative(ptr *time.Duration, name string) error
type DurationPtrAssertor ¶ added in v0.2.1
type DurationPtrAssertor struct {
// contains filtered or unexported fields
}
func (*DurationPtrAssertor) Assert ¶ added in v0.2.1
func (asr *DurationPtrAssertor) Assert(validators ...DurationPtrValidator) error
type DurationPtrPredicate ¶ added in v0.2.1
type DurationPtrValidator ¶ added in v0.2.1
type DurationValidator ¶ added in v0.2.1
func (DurationValidator) AssertPtr ¶ added in v0.2.1
func (fn DurationValidator) AssertPtr(v *time.Duration, name string) error
func (DurationValidator) AssertValue ¶ added in v0.2.1
func (fn DurationValidator) AssertValue(v interface{}, name string) error
type FloatAssertion ¶
type FloatAssertion string
func (FloatAssertion) Assert ¶
func (FloatAssertion) Assert(v float64, name string, validators ...FloatValidator) error
func (FloatAssertion) Assertor ¶
func (FloatAssertion) Assertor(v float64, name string) *FloatAssertor
func (FloatAssertion) BetweenRange ¶
func (FloatAssertion) BetweenRange(min, max float64) FloatValidator
BetweenRange checks if given number is between the specified minimum and maximum values (both inclusive).
func (FloatAssertion) Greater ¶
func (FloatAssertion) Greater(comparand float64) FloatValidator
func (FloatAssertion) GreaterOrEqual ¶
func (FloatAssertion) GreaterOrEqual(comparand float64) FloatValidator
func (FloatAssertion) Less ¶
func (FloatAssertion) Less(comparand float64) FloatValidator
func (FloatAssertion) LessOrEqual ¶
func (FloatAssertion) LessOrEqual(comparand float64) FloatValidator
func (FloatAssertion) Must ¶
func (FloatAssertion) Must(fn FloatPredicate) FloatValidator
Example ¶
package main import ( "fmt" "math" "github.com/Bofry/arg" ) func main() { var v float64 = 4.9001 err := arg.Floats.Assert(v, "v", arg.Floats.Must( func(v float64) bool { return math.Round(v) == 5 }), ) fmt.Println(err) }
Output: <nil>
func (FloatAssertion) NonNanNorInf ¶
func (FloatAssertion) NonNanNorInf(v float64, name string) error
func (FloatAssertion) NonNegativeNumber ¶
func (FloatAssertion) NonNegativeNumber(v float64, name string) error
type FloatAssertor ¶
type FloatAssertor struct {
// contains filtered or unexported fields
}
func (*FloatAssertor) Assert ¶
func (asr *FloatAssertor) Assert(validators ...FloatValidator) error
type FloatPredicate ¶
type FloatPtrAssertion ¶ added in v0.2.1
type FloatPtrAssertion string
func (FloatPtrAssertion) Assert ¶ added in v0.2.1
func (FloatPtrAssertion) Assert(v *float64, name string, validators ...FloatPtrValidator) error
func (FloatPtrAssertion) Assertor ¶ added in v0.2.1
func (FloatPtrAssertion) Assertor(v *float64, name string) *FloatPtrAssertor
func (FloatPtrAssertion) BetweenRange ¶ added in v0.2.1
func (FloatPtrAssertion) BetweenRange(min, max float64) FloatPtrValidator
BetweenRange checks if given number is between the specified minimum and maximum values (both inclusive).
func (FloatPtrAssertion) Greater ¶ added in v0.2.1
func (FloatPtrAssertion) Greater(comparand float64) FloatPtrValidator
func (FloatPtrAssertion) GreaterOrEqual ¶ added in v0.2.1
func (FloatPtrAssertion) GreaterOrEqual(comparand float64) FloatPtrValidator
func (FloatPtrAssertion) Less ¶ added in v0.2.1
func (FloatPtrAssertion) Less(comparand float64) FloatPtrValidator
func (FloatPtrAssertion) LessOrEqual ¶ added in v0.2.1
func (FloatPtrAssertion) LessOrEqual(comparand float64) FloatPtrValidator
func (FloatPtrAssertion) Must ¶ added in v0.2.1
func (FloatPtrAssertion) Must(fn FloatPtrPredicate) FloatPtrValidator
func (FloatPtrAssertion) MustNil ¶ added in v0.2.3
func (FloatPtrAssertion) MustNil(v *float64, name string) error
func (FloatPtrAssertion) NonNanNorInf ¶ added in v0.2.1
func (FloatPtrAssertion) NonNanNorInf(ptr *float64, name string) error
func (FloatPtrAssertion) NonNegativeNumber ¶ added in v0.2.1
func (FloatPtrAssertion) NonNegativeNumber(ptr *float64, name string) error
type FloatPtrAssertor ¶ added in v0.2.1
type FloatPtrAssertor struct {
// contains filtered or unexported fields
}
func (*FloatPtrAssertor) Assert ¶ added in v0.2.1
func (asr *FloatPtrAssertor) Assert(validators ...FloatPtrValidator) error
type FloatPtrPredicate ¶ added in v0.2.1
type FloatPtrValidator ¶ added in v0.2.1
type FloatValidator ¶
func (FloatValidator) AssertNumber ¶
func (fn FloatValidator) AssertNumber(v Number, name string) error
func (FloatValidator) AssertPtr ¶ added in v0.2.1
func (fn FloatValidator) AssertPtr(v *float64, name string) error
func (FloatValidator) AssertValue ¶
func (fn FloatValidator) AssertValue(v interface{}, name string) error
type IPAssertion ¶
type IPAssertion string
func (IPAssertion) Assert ¶
func (IPAssertion) Assert(v IP, name string, validators ...IPValidator) error
func (IPAssertion) Assertor ¶
func (IPAssertion) Assertor(v IP, name string) *IPAssertor
func (IPAssertion) BelongToAny ¶
func (IPAssertion) BelongToAny(cidrs ...string) IPValidator
BelongTo checks whether the ip is belong to the specified networks.
func (IPAssertion) GlobalUnicast ¶
func (IPAssertion) GlobalUnicast(v IP, name string) error
GlobalUnicast checks whether ip is a global unicast address.
The identification of global unicast addresses uses address type identification as defined in RFC 1122, RFC 4632 and RFC 4291 with the expection of IPv4 directed broadcast addresses. It returns true even if ip is in IPv4 private address space or local IPv6 unicast address space.
func (IPAssertion) InterfaceLocalMulticast ¶
func (IPAssertion) InterfaceLocalMulticast(v IP, name string) error
InterfaceLocalMulticast checks whether ip is an interface-local multicast address.
func (IPAssertion) LinkLocalMulticast ¶
func (IPAssertion) LinkLocalMulticast(v IP, name string) error
LinkLocalMulticast checks whether ip is a link-local multicast address.
func (IPAssertion) LinkLocalUnicast ¶
func (IPAssertion) LinkLocalUnicast(v IP, name string) error
LinkLocalUnicast checks whether ip is a link-local unicast address.
func (IPAssertion) Loopback ¶
func (IPAssertion) Loopback(v IP, name string) error
Loopback checks whether ip is a loopback address.
func (IPAssertion) Multicast ¶
func (IPAssertion) Multicast(v IP, name string) error
Multicast checks whether ip is a multicast address.
func (IPAssertion) Must ¶
func (IPAssertion) Must(fn IPPredicate) IPValidator
func (IPAssertion) NotBelongToAny ¶
func (IPAssertion) NotBelongToAny(cidrs ...string) IPValidator
func (IPAssertion) NotGlobalUnicast ¶
func (IPAssertion) NotGlobalUnicast(v IP, name string) error
func (IPAssertion) NotInterfaceLocalMulticast ¶
func (IPAssertion) NotInterfaceLocalMulticast(v IP, name string) error
func (IPAssertion) NotLinkLocalMulticast ¶
func (IPAssertion) NotLinkLocalMulticast(v IP, name string) error
func (IPAssertion) NotLinkLocalUnicast ¶
func (IPAssertion) NotLinkLocalUnicast(v IP, name string) error
func (IPAssertion) NotLoopback ¶
func (IPAssertion) NotLoopback(v IP, name string) error
func (IPAssertion) NotMulticast ¶
func (IPAssertion) NotMulticast(v IP, name string) error
func (IPAssertion) NotPrivate ¶
func (IPAssertion) NotPrivate(v IP, name string) error
func (IPAssertion) NotUnspecified ¶
func (IPAssertion) NotUnspecified(v IP, name string) error
func (IPAssertion) Private ¶
func (IPAssertion) Private(v IP, name string) error
Private checks whether ip is a private address, according to RFC 1918 (IPv4 addresses) and RFC 4193 (IPv6 addresses).
func (IPAssertion) Unspecified ¶
func (IPAssertion) Unspecified(v IP, name string) error
Unspecified checks whether ip is an unspecified address, either the IPv4 address "0.0.0.0" or the IPv6 address "::".
type IPAssertor ¶
type IPAssertor struct {
// contains filtered or unexported fields
}
func (*IPAssertor) Assert ¶
func (asr *IPAssertor) Assert(validators ...IPValidator) error
type IPPredicate ¶
type IPValidator ¶
func (IPValidator) AssertString ¶
func (fn IPValidator) AssertString(v string, name string) error
func (IPValidator) AssertValue ¶
func (fn IPValidator) AssertValue(v interface{}, name string) error
type IntAssertion ¶
type IntAssertion string
func (IntAssertion) Assert ¶
func (IntAssertion) Assert(v int64, name string, validators ...IntValidator) error
func (IntAssertion) Assertor ¶
func (IntAssertion) Assertor(v int64, name string) *IntAssertor
func (IntAssertion) BetweenRange ¶
func (IntAssertion) BetweenRange(min, max int64) IntValidator
BetweenRange checks if given integer is between the specified minimum and maximum values (both inclusive).
func (IntAssertion) GreaterOrEqual ¶
func (IntAssertion) GreaterOrEqual(boundary int64) IntValidator
func (IntAssertion) In ¶
func (IntAssertion) In(values ...int64) IntValidator
func (IntAssertion) LessOrEqual ¶
func (IntAssertion) LessOrEqual(boundary int64) IntValidator
func (IntAssertion) Must ¶
func (IntAssertion) Must(fn IntPredicate) IntValidator
Example ¶
package main import ( "fmt" "github.com/Bofry/arg" ) func main() { var v int64 = 6 err := arg.Ints.Assert(v, "v", arg.Ints.Must( func(v int64) bool { return (v & 0x01) == 0 }), ) fmt.Println(err) }
Output: <nil>
func (IntAssertion) NonNegativeInteger ¶
func (IntAssertion) NonNegativeInteger(v int64, name string) error
func (IntAssertion) NotIn ¶
func (IntAssertion) NotIn(values ...int64) IntValidator
type IntAssertor ¶
type IntAssertor struct {
// contains filtered or unexported fields
}
func (*IntAssertor) Assert ¶
func (asr *IntAssertor) Assert(validators ...IntValidator) error
type IntPredicate ¶
type IntPtrAssertion ¶ added in v0.2.1
type IntPtrAssertion string
func (IntPtrAssertion) Assert ¶ added in v0.2.1
func (IntPtrAssertion) Assert(v *int64, name string, validators ...IntPtrValidator) error
func (IntPtrAssertion) Assertor ¶ added in v0.2.1
func (IntPtrAssertion) Assertor(v *int64, name string) *IntPtrAssertor
func (IntPtrAssertion) BetweenRange ¶ added in v0.2.1
func (IntPtrAssertion) BetweenRange(min, max int64) IntPtrValidator
BetweenRange checks if given integer is between the specified minimum and maximum values (both inclusive).
func (IntPtrAssertion) GreaterOrEqual ¶ added in v0.2.1
func (IntPtrAssertion) GreaterOrEqual(boundary int64) IntPtrValidator
func (IntPtrAssertion) In ¶ added in v0.2.1
func (IntPtrAssertion) In(values ...int64) IntPtrValidator
func (IntPtrAssertion) LessOrEqual ¶ added in v0.2.1
func (IntPtrAssertion) LessOrEqual(boundary int64) IntPtrValidator
func (IntPtrAssertion) Must ¶ added in v0.2.1
func (IntPtrAssertion) Must(fn IntPtrPredicate) IntPtrValidator
func (IntPtrAssertion) MustNil ¶ added in v0.2.3
func (IntPtrAssertion) MustNil(v *int64, name string) error
func (IntPtrAssertion) NonNegativeInteger ¶ added in v0.2.1
func (IntPtrAssertion) NonNegativeInteger(ptr *int64, name string) error
func (IntPtrAssertion) NonZero ¶ added in v0.2.1
func (IntPtrAssertion) NonZero(ptr *int64, name string) error
func (IntPtrAssertion) NotIn ¶ added in v0.2.1
func (IntPtrAssertion) NotIn(values ...int64) IntPtrValidator
type IntPtrAssertor ¶ added in v0.2.1
type IntPtrAssertor struct {
// contains filtered or unexported fields
}
func (*IntPtrAssertor) Assert ¶ added in v0.2.1
func (asr *IntPtrAssertor) Assert(validators ...IntPtrValidator) error
type IntPtrPredicate ¶ added in v0.2.1
type IntPtrValidator ¶ added in v0.2.1
type IntValidator ¶
func (IntValidator) AssertNumber ¶
func (fn IntValidator) AssertNumber(v Number, name string) error
func (IntValidator) AssertPtr ¶ added in v0.2.1
func (fn IntValidator) AssertPtr(v *int64, name string) error
func (IntValidator) AssertValue ¶
func (fn IntValidator) AssertValue(v interface{}, name string) error
type InvalidArgumentError ¶
func (*InvalidArgumentError) Error ¶
func (e *InvalidArgumentError) Error() string
func (*InvalidArgumentError) Unwrap ¶
func (e *InvalidArgumentError) Unwrap() error
Unwrap returns the underlying error.
type NumberAssertion ¶
type NumberAssertion string
func (NumberAssertion) Assert ¶
func (NumberAssertion) Assert(v Number, name string, validators ...NumberValidator) error
func (NumberAssertion) Assertor ¶
func (NumberAssertion) Assertor(v Number, name string) *NumberAssertor
func (NumberAssertion) BetweenRange ¶
func (NumberAssertion) BetweenRange(min, max float64) NumberValidator
BetweenRange checks if given number is between the specified minimum and maximum values (both inclusive).
func (NumberAssertion) Greater ¶
func (NumberAssertion) Greater(comparand float64) NumberValidator
func (NumberAssertion) GreaterOrEqual ¶
func (NumberAssertion) GreaterOrEqual(comparand float64) NumberValidator
func (NumberAssertion) Less ¶
func (NumberAssertion) Less(comparand float64) NumberValidator
func (NumberAssertion) LessOrEqual ¶
func (NumberAssertion) LessOrEqual(comparand float64) NumberValidator
func (NumberAssertion) Must ¶
func (NumberAssertion) Must(fn NumberPredicate) NumberValidator
Example ¶
package main import ( "fmt" "github.com/Bofry/arg" ) func main() { var v arg.Number = "6" err := arg.Numbers.Assert(v, "v", arg.Numbers.Must( func(v arg.Number) bool { argv, err := v.Int64() if err != nil { return false } return (argv & 0x01) == 0 }), ) fmt.Println(err) }
Output: <nil>
func (NumberAssertion) MustFloat ¶
func (NumberAssertion) MustFloat(fn FloatPredicate) NumberValidator
func (NumberAssertion) MustInt ¶
func (NumberAssertion) MustInt(fn IntPredicate) NumberValidator
func (NumberAssertion) NonNanNorInf ¶
func (NumberAssertion) NonNanNorInf(v Number, name string) error
func (NumberAssertion) NonNegativeNumber ¶
func (NumberAssertion) NonNegativeNumber(v Number, name string) error
func (NumberAssertion) NotIn ¶
func (NumberAssertion) NotIn(values ...int64) NumberValidator
type NumberAssertor ¶
type NumberAssertor struct {
// contains filtered or unexported fields
}
func (*NumberAssertor) Assert ¶
func (asr *NumberAssertor) Assert(validators ...NumberValidator) error
type NumberPredicate ¶
type NumberPtrAssertion ¶ added in v0.2.1
type NumberPtrAssertion string
func (NumberPtrAssertion) Assert ¶ added in v0.2.1
func (NumberPtrAssertion) Assert(v *Number, name string, validators ...NumberPtrValidator) error
func (NumberPtrAssertion) Assertor ¶ added in v0.2.1
func (NumberPtrAssertion) Assertor(v *Number, name string) *NumberPtrAssertor
func (NumberPtrAssertion) BetweenRange ¶ added in v0.2.1
func (NumberPtrAssertion) BetweenRange(min, max float64) NumberPtrValidator
BetweenRange checks if given number is between the specified minimum and maximum values (both inclusive).
func (NumberPtrAssertion) Greater ¶ added in v0.2.1
func (NumberPtrAssertion) Greater(comparand float64) NumberPtrValidator
func (NumberPtrAssertion) GreaterOrEqual ¶ added in v0.2.1
func (NumberPtrAssertion) GreaterOrEqual(comparand float64) NumberPtrValidator
func (NumberPtrAssertion) IsNumber ¶ added in v0.2.1
func (NumberPtrAssertion) IsNumber(ptr *Number, name string) error
func (NumberPtrAssertion) Less ¶ added in v0.2.1
func (NumberPtrAssertion) Less(comparand float64) NumberPtrValidator
func (NumberPtrAssertion) LessOrEqual ¶ added in v0.2.1
func (NumberPtrAssertion) LessOrEqual(comparand float64) NumberPtrValidator
func (NumberPtrAssertion) Must ¶ added in v0.2.1
func (NumberPtrAssertion) Must(fn NumberPtrPredicate) NumberPtrValidator
func (NumberPtrAssertion) MustFloat ¶ added in v0.2.1
func (NumberPtrAssertion) MustFloat(fn FloatPredicate) NumberPtrValidator
func (NumberPtrAssertion) MustInt ¶ added in v0.2.1
func (NumberPtrAssertion) MustInt(fn IntPredicate) NumberPtrValidator
func (NumberPtrAssertion) MustNil ¶ added in v0.2.3
func (NumberPtrAssertion) MustNil(v *Number, name string) error
func (NumberPtrAssertion) NonNanNorInf ¶ added in v0.2.1
func (NumberPtrAssertion) NonNanNorInf(ptr *Number, name string) error
func (NumberPtrAssertion) NonNegativeNumber ¶ added in v0.2.1
func (NumberPtrAssertion) NonNegativeNumber(ptr *Number, name string) error
func (NumberPtrAssertion) NonZero ¶ added in v0.2.1
func (NumberPtrAssertion) NonZero(ptr *Number, name string) error
func (NumberPtrAssertion) NotIn ¶ added in v0.2.1
func (NumberPtrAssertion) NotIn(values ...int64) NumberPtrValidator
type NumberPtrAssertor ¶ added in v0.2.1
type NumberPtrAssertor struct {
// contains filtered or unexported fields
}
func (*NumberPtrAssertor) Assert ¶ added in v0.2.1
func (asr *NumberPtrAssertor) Assert(validators ...NumberPtrValidator) error
type NumberPtrPredicate ¶ added in v0.2.1
type NumberPtrValidator ¶ added in v0.2.1
type NumberValidator ¶
func (NumberValidator) AssertPtr ¶ added in v0.2.1
func (fn NumberValidator) AssertPtr(v *Number, name string) error
func (NumberValidator) AssertValue ¶ added in v0.2.1
func (fn NumberValidator) AssertValue(v interface{}, name string) error
type SliceAssertion ¶
type SliceAssertion string
func (SliceAssertion) NonEmpty ¶
func (SliceAssertion) NonEmpty(v interface{}, name string) error
type StringAssertion ¶
type StringAssertion string
func (StringAssertion) Assert ¶
func (StringAssertion) Assert(v string, name string, validators ...StringValidator) error
func (StringAssertion) Assertor ¶
func (StringAssertion) Assertor(v string, name string) *StringAssertor
func (StringAssertion) In ¶
func (StringAssertion) In(values ...string) StringValidator
func (StringAssertion) MatchAny ¶
func (StringAssertion) MatchAny(patterns ...string) StringValidator
MatchAny checks if given string match any one from specified patterns.
Example ¶
package main import ( "fmt" "github.com/Bofry/arg" ) func main() { var v string = "demo@mail.com" err := arg.Strings.Assert(v, "v", arg.Strings.MatchAny( arg.EmailPattern, ), ) fmt.Println(err) }
Output: <nil>
func (StringAssertion) MaxLength ¶
func (StringAssertion) MaxLength(size int) StringValidator
func (StringAssertion) MinLength ¶
func (StringAssertion) MinLength(size int) StringValidator
func (StringAssertion) Must ¶
func (StringAssertion) Must(fn StringPredicate) StringValidator
Must checks if the given string is evaluated to true by specified predicate.
Example ¶
package main import ( "fmt" "strings" "github.com/Bofry/arg" ) func main() { var v string = "ENV_FOO" err := arg.Strings.Assert(v, "v", arg.Strings.Must( func(v string) bool { return strings.HasPrefix(v, "ENV_") }), ) fmt.Println(err) }
Output: <nil>
type StringAssertor ¶
type StringAssertor struct {
// contains filtered or unexported fields
}
func (*StringAssertor) Assert ¶
func (asr *StringAssertor) Assert(validators ...StringValidator) error
type StringPredicate ¶
type StringPtrAssertion ¶ added in v0.2.1
type StringPtrAssertion string
func (StringPtrAssertion) Assert ¶ added in v0.2.1
func (StringPtrAssertion) Assert(v *string, name string, validators ...StringPtrValidator) error
func (StringPtrAssertion) Assertor ¶ added in v0.2.1
func (StringPtrAssertion) Assertor(v *string, name string) *StringPtrAssertor
func (StringPtrAssertion) In ¶ added in v0.2.1
func (StringPtrAssertion) In(values ...string) StringPtrValidator
func (StringPtrAssertion) MatchAny ¶ added in v0.2.1
func (StringPtrAssertion) MatchAny(patterns ...string) StringPtrValidator
MatchAny checks if given string match any one from specified patterns.
func (StringPtrAssertion) MaxLength ¶ added in v0.2.1
func (StringPtrAssertion) MaxLength(size int) StringPtrValidator
func (StringPtrAssertion) MinLength ¶ added in v0.2.1
func (StringPtrAssertion) MinLength(size int) StringPtrValidator
func (StringPtrAssertion) Must ¶ added in v0.2.1
func (StringPtrAssertion) Must(fn StringPtrPredicate) StringPtrValidator
Must checks if the given string is evaluated to true by specified predicate.
func (StringPtrAssertion) MustNil ¶ added in v0.2.3
func (StringPtrAssertion) MustNil(v *string, name string) error
type StringPtrAssertor ¶ added in v0.2.1
type StringPtrAssertor struct {
// contains filtered or unexported fields
}
func (*StringPtrAssertor) Assert ¶ added in v0.2.1
func (asr *StringPtrAssertor) Assert(validators ...StringPtrValidator) error
type StringPtrPredicate ¶ added in v0.2.1
type StringPtrValidator ¶ added in v0.2.1
type StringValidator ¶
func (StringValidator) AssertNumber ¶
func (fn StringValidator) AssertNumber(v Number, name string) error
func (StringValidator) AssertPtr ¶ added in v0.2.1
func (fn StringValidator) AssertPtr(v *string, name string) error
func (StringValidator) AssertValue ¶
func (fn StringValidator) AssertValue(v interface{}, name string) error
type TimeAssertion ¶ added in v0.2.1
type TimeAssertion string
func (TimeAssertion) AfterOrEqual ¶ added in v0.2.1
func (TimeAssertion) AfterOrEqual(boundary time.Time) TimeValidator
func (TimeAssertion) Assert ¶ added in v0.2.1
func (TimeAssertion) Assert(v time.Time, name string, validators ...TimeValidator) error
func (TimeAssertion) Assertor ¶ added in v0.2.1
func (TimeAssertion) Assertor(v time.Time, name string) *TimeAssertor
func (TimeAssertion) BeforeOrEqual ¶ added in v0.2.1
func (TimeAssertion) BeforeOrEqual(boundary time.Time) TimeValidator
func (TimeAssertion) BetweenRange ¶ added in v0.2.1
func (TimeAssertion) BetweenRange(min, max time.Time) TimeValidator
BetweenRange checks if given time.Time is between the specified minimum and maximum values (both inclusive).
func (TimeAssertion) InWeekday ¶ added in v0.2.1
func (TimeAssertion) InWeekday(values ...time.Weekday) TimeValidator
func (TimeAssertion) IsUTC ¶ added in v0.2.1
func (TimeAssertion) IsUTC(v time.Time, name string) error
func (TimeAssertion) Must ¶ added in v0.2.1
func (TimeAssertion) Must(fn TimePredicate) TimeValidator
func (TimeAssertion) NonZero ¶ added in v0.2.1
func (TimeAssertion) NonZero(v time.Time, name string) error
func (TimeAssertion) NotInWeekday ¶ added in v0.2.1
func (TimeAssertion) NotInWeekday(values ...time.Weekday) TimeValidator
type TimeAssertor ¶ added in v0.2.1
type TimeAssertor struct {
// contains filtered or unexported fields
}
func (*TimeAssertor) Assert ¶ added in v0.2.1
func (asr *TimeAssertor) Assert(validators ...TimeValidator) error
type TimePredicate ¶ added in v0.2.1
type TimePtrAssertion ¶ added in v0.2.1
type TimePtrAssertion string
func (TimePtrAssertion) AfterOrEqual ¶ added in v0.2.1
func (TimePtrAssertion) AfterOrEqual(boundary time.Time) TimePtrValidator
func (TimePtrAssertion) Assert ¶ added in v0.2.1
func (TimePtrAssertion) Assert(v *time.Time, name string, validators ...TimePtrValidator) error
func (TimePtrAssertion) Assertor ¶ added in v0.2.1
func (TimePtrAssertion) Assertor(v *time.Time, name string) *TimePtrAssertor
func (TimePtrAssertion) BeforeOrEqual ¶ added in v0.2.1
func (TimePtrAssertion) BeforeOrEqual(boundary time.Time) TimePtrValidator
func (TimePtrAssertion) BetweenRange ¶ added in v0.2.1
func (TimePtrAssertion) BetweenRange(min, max time.Time) TimePtrValidator
BetweenRange checks if given time.TIme is between the specified minimum and maximum values (both inclusive).
func (TimePtrAssertion) InWeekday ¶ added in v0.2.1
func (TimePtrAssertion) InWeekday(values ...time.Weekday) TimePtrValidator
func (TimePtrAssertion) IsUTC ¶ added in v0.2.1
func (TimePtrAssertion) IsUTC(ptr *time.Time, name string) error
func (TimePtrAssertion) Must ¶ added in v0.2.1
func (TimePtrAssertion) Must(fn TimePtrPredicate) TimePtrValidator
func (TimePtrAssertion) MustNil ¶ added in v0.2.3
func (TimePtrAssertion) MustNil(v *time.Time, name string) error
func (TimePtrAssertion) NonZero ¶ added in v0.2.1
func (TimePtrAssertion) NonZero(ptr *time.Time, name string) error
func (TimePtrAssertion) NotInWeekday ¶ added in v0.2.1
func (TimePtrAssertion) NotInWeekday(values ...time.Weekday) TimePtrValidator
type TimePtrAssertor ¶ added in v0.2.1
type TimePtrAssertor struct {
// contains filtered or unexported fields
}
func (*TimePtrAssertor) Assert ¶ added in v0.2.1
func (asr *TimePtrAssertor) Assert(validators ...TimePtrValidator) error
type TimePtrPredicate ¶ added in v0.2.1
type TimeValidator ¶ added in v0.2.1
func (TimeValidator) AssertPtr ¶ added in v0.2.1
func (fn TimeValidator) AssertPtr(v *time.Time, name string) error
func (TimeValidator) AssertValue ¶ added in v0.2.1
func (fn TimeValidator) AssertValue(v interface{}, name string) error
type UIntAssertion ¶
type UIntAssertion string
func (UIntAssertion) Assert ¶
func (UIntAssertion) Assert(v uint64, name string, validators ...UIntValidator) error
func (UIntAssertion) Assertor ¶
func (UIntAssertion) Assertor(v uint64, name string) *UIntAssertor
func (UIntAssertion) BetweenRange ¶
func (UIntAssertion) BetweenRange(min, max uint64) UIntValidator
BetweenRange checks if given integer is between the specified minimum and maximum values (both inclusive).
func (UIntAssertion) GreaterOrEqual ¶
func (UIntAssertion) GreaterOrEqual(boundary uint64) UIntValidator
func (UIntAssertion) In ¶
func (UIntAssertion) In(values ...uint64) UIntValidator
func (UIntAssertion) LessOrEqual ¶
func (UIntAssertion) LessOrEqual(boundary uint64) UIntValidator
func (UIntAssertion) Must ¶
func (UIntAssertion) Must(fn UIntPredicate) UIntValidator
func (UIntAssertion) NotIn ¶
func (UIntAssertion) NotIn(values ...uint64) UIntValidator
type UIntAssertor ¶
type UIntAssertor struct {
// contains filtered or unexported fields
}
func (*UIntAssertor) Assert ¶
func (asr *UIntAssertor) Assert(validators ...UIntValidator) error
type UIntPredicate ¶
type UIntPtrAssertion ¶ added in v0.2.1
type UIntPtrAssertion string
func (UIntPtrAssertion) Assert ¶ added in v0.2.1
func (UIntPtrAssertion) Assert(v *uint64, name string, validators ...UIntPtrValidator) error
func (UIntPtrAssertion) Assertor ¶ added in v0.2.1
func (UIntPtrAssertion) Assertor(v *uint64, name string) *UIntPtrAssertor
func (UIntPtrAssertion) BetweenRange ¶ added in v0.2.1
func (UIntPtrAssertion) BetweenRange(min, max uint64) UIntPtrValidator
BetweenRange checks if given integer is between the specified minimum and maximum values (both inclusive).
func (UIntPtrAssertion) GreaterOrEqual ¶ added in v0.2.1
func (UIntPtrAssertion) GreaterOrEqual(boundary uint64) UIntPtrValidator
func (UIntPtrAssertion) In ¶ added in v0.2.1
func (UIntPtrAssertion) In(values ...uint64) UIntPtrValidator
func (UIntPtrAssertion) LessOrEqual ¶ added in v0.2.1
func (UIntPtrAssertion) LessOrEqual(boundary uint64) UIntPtrValidator
func (UIntPtrAssertion) Must ¶ added in v0.2.1
func (UIntPtrAssertion) Must(fn UIntPtrPredicate) UIntPtrValidator
func (UIntPtrAssertion) MustNil ¶ added in v0.2.3
func (UIntPtrAssertion) MustNil(v *uint64, name string) error
func (UIntPtrAssertion) NonZero ¶ added in v0.2.1
func (UIntPtrAssertion) NonZero(ptr *uint64, name string) error
func (UIntPtrAssertion) NotIn ¶ added in v0.2.1
func (UIntPtrAssertion) NotIn(values ...uint64) UIntPtrValidator
type UIntPtrAssertor ¶ added in v0.2.1
type UIntPtrAssertor struct {
// contains filtered or unexported fields
}
func (*UIntPtrAssertor) Assert ¶ added in v0.2.1
func (asr *UIntPtrAssertor) Assert(validators ...UIntPtrValidator) error
type UIntPtrPredicate ¶ added in v0.2.1
type UIntPtrValidator ¶ added in v0.2.1
type UIntValidator ¶
func (UIntValidator) AssertNumber ¶
func (fn UIntValidator) AssertNumber(v Number, name string) error
func (UIntValidator) AssertPtr ¶ added in v0.2.1
func (fn UIntValidator) AssertPtr(v *uint64, name string) error
func (UIntValidator) AssertValue ¶
func (fn UIntValidator) AssertValue(v interface{}, name string) error
type Validatable ¶ added in v0.2.3
type Validatable = content.Validatable
type ValueAssertion ¶
type ValueAssertion string
func (ValueAssertion) Assert ¶
func (ValueAssertion) Assert(v interface{}, name string, validators ...ValueValidator) error
func (ValueAssertion) Assertor ¶
func (ValueAssertion) Assertor(v interface{}, name string) *ValueAssertor
func (ValueAssertion) Must ¶
func (ValueAssertion) Must(fn ValuePredicate) ValueValidator
func (ValueAssertion) MustNil ¶ added in v0.2.3
func (ValueAssertion) MustNil(v interface{}, name string) error
func (ValueAssertion) NotNil ¶
func (ValueAssertion) NotNil(v interface{}, name string) error
type ValueAssertor ¶
type ValueAssertor struct {
// contains filtered or unexported fields
}
func (*ValueAssertor) Assert ¶
func (asr *ValueAssertor) Assert(validators ...ValueValidator) error
type ValuePredicate ¶
type ValuePredicate func(v interface{}) bool
type ValueValidator ¶
Source Files ¶
- arg.go
- def.go
- durationAssertion.go
- durationAssertor.go
- durationPtrAssertion.go
- durationPtrAssertor.go
- durationValidator.go
- error.go
- floatAssertion.go
- floatAssertor.go
- floatPtrAssertion.go
- floatPtrAssertor.go
- floatValidator.go
- intAssertion.go
- intAssertor.go
- intPtrAssertion.go
- intPtrAssertor.go
- intValidator.go
- ipAssertion.go
- ipAssertor.go
- ipValidator.go
- numberAssertion.go
- numberAssertor.go
- numberPtrAssertion.go
- numberPtrAssertor.go
- numbrtValidator.go
- patterns.go
- sliceAssertion.go
- stringAssertion.go
- stringAssertor.go
- stringPtrAssertion.go
- stringPtrAssertor.go
- stringValidator.go
- tImeAssertor.go
- timeAssertion.go
- timePtrAssertion.go
- timePtrAssertor.go
- timeValidator.go
- uintAssertion.go
- uintAssertor.go
- uintPtrAssertion.go
- uintPtrAssertor.go
- uintValidator.go
- valueAssertion.go
- valueAssertor.go