in isdef/dsl.go [61:78]
func IsSliceOf(validator validator.Validator) IsDef {
return Is("slice", func(path llpath.Path, v interface{}) *llresult.Results {
if reflect.TypeOf(v).Kind() != reflect.Slice {
return llresult.SimpleResult(path, false, "Expected slice at given path")
}
vSlice := llreflect.InterfaceToSliceOfInterfaces(v)
res := llresult.NewResults()
for idx, curV := range vSlice {
var validatorRes *llresult.Results
validatorRes = validator(curV)
res.MergeUnderPrefix(path.ExtendSlice(idx), validatorRes)
}
return res
})
}