123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- package validate
- var (
- ErrMustBeGreater = NewError("must be greater than %v")
- ErrMustBeGreaterOrEqual = NewError("must be greater than or equal to %v")
- ErrMustBeLess = NewError("must be less than %v")
- ErrMustBeLessOrEqual = NewError("must be less than or equal to %v")
- )
- // Max validates whether an integer is less than or equal to a given maximum.
- // If exclusive is true, an equal value will also produce an error.
- func Max(n int, exclusive bool) func(int) error {
- return func(value int) error {
- if exclusive {
- if value >= n {
- return ErrMustBeLess.With(n)
- }
- }
- if value > n {
- return ErrMustBeLessOrEqual.With(n)
- }
- return nil
- }
- }
- // MaxFloat32 validates whether a float32 is less than or equal to a given maximum.
- // If exclusive is true, an equal value will also produce an error.
- func MaxFloat32(n float32, exclusive bool) func(float32) error {
- return func(value float32) error {
- if exclusive {
- if value >= n {
- return ErrMustBeLess.With(n)
- }
- }
- if value > n {
- return ErrMustBeLessOrEqual.With(n)
- }
- return nil
- }
- }
- // MaxFloat64 validates whether a float64 is less than or equal to a given maximum.
- // If exclusive is true, an equal value will also produce an error.
- func MaxFloat64(n float64, exclusive bool) func(float64) error {
- return func(value float64) error {
- if exclusive {
- if value >= n {
- return ErrMustBeLess.With(n)
- }
- }
- if value > n {
- return ErrMustBeLessOrEqual.With(n)
- }
- return nil
- }
- }
- // Min validates whether an integer is less than or equal to a given maximum.
- // If exclusive is true, an equal value will also produce an error.
- func Min(n int, exclusive bool) func(int) error {
- return func(value int) error {
- if exclusive {
- if value <= n {
- return ErrMustBeGreater.With(n)
- }
- }
- if value < n {
- return ErrMustBeGreaterOrEqual.With(n)
- }
- return nil
- }
- }
- // MinFloat32 validates whether a float32 is less than or equal to a given maximum.
- // If exclusive is true, an equal value will also produce an error.
- func MinFloat32(n float32, exclusive bool) func(float32) error {
- return func(value float32) error {
- if exclusive {
- if value <= n {
- return ErrMustBeGreater.With(n)
- }
- }
- if value < n {
- return ErrMustBeGreaterOrEqual.With(n)
- }
- return nil
- }
- }
- // MinFloat64 validates whether a float64 is less than or equal to a given maximum.
- // If exclusive is true, an equal value will also produce an error.
- func MinFloat64(n float64, exclusive bool) func(float64) error {
- return func(value float64) error {
- if exclusive {
- if value <= n {
- return ErrMustBeGreater.With(n)
- }
- }
- if value < n {
- return ErrMustBeGreaterOrEqual.With(n)
- }
- return nil
- }
- }
|