in validator.go [79:107]
func parseValidatorTags(tag string) ([]validatorTag, error) {
if tag == "" {
return nil, nil
}
lst := strings.Split(tag, ",")
if len(lst) == 0 {
return nil, nil
}
tags := make([]validatorTag, 0, len(lst))
for _, cfg := range lst {
v := strings.SplitN(cfg, "=", 2)
name := strings.Trim(v[0], " \t\r\n")
cb := validators[name]
if cb == nil {
return nil, fmt.Errorf("unknown validator '%v'", name)
}
param := ""
if len(v) == 2 {
param = strings.Trim(v[1], " \t\r\n")
}
tags = append(tags, validatorTag{name: name, cb: cb, param: param})
}
return tags, nil
}