Time pointer validator
The ValidatorTimeP provides functions for setting validation rules for a time.Time type pointer, or a custom type based on a time.Time pointer.
Below is a valid example for every Time pointer validator rule.
import "time"
import "time"
x := time.Now(); v.Is(v.TimeP(&x).EqualTo(time.Now()))x = time.Now(); v.Is(v.TimeP(&x).After(time.Now().Add(-time.Hour)))x = time.Now(); v.Is(v.TimeP(&x).AfterOrEqualTo(time.Now().Add(-time.Hour)))x = time.Now(); v.Is(v.TimeP(&x).Before(time.Now().Add(time.Hour)))x = time.Now(); v.Is(v.TimeP(&x).BeforeOrEqualTo(time.Now().Add(time.Hour)))x = time.Now(); v.Is(v.TimeP(&x).Between(time.Now().Add(-time.Hour), time.Now().Add(2*time.Hour))) // Inclusivex = time.Time{}; v.Is(v.TimeP(&x).Zero())x = time.Now(); v.Is(v.TimeP(&x).Passing(func(val *time.Time) bool { return val.Before(time.Now().Add(2*time.Hour)) }))x = time.Now(); v.Is(v.TimeP(&x).InSlice([]time.Time{time.Now(), time.Now().Add(time.Hour)}))var x *time.Time; v.Is(v.TimeP(x).Nil())x = new(time.Time); v.Is(v.TimeP(x).NilOrZero())