internal/opts: use strings.Cut
In some places, using strings.Cut (available since Go 1.18) instead of strings.SplitN allows for simpler more readable code. Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
This commit is contained in:
parent
fd5483f4a8
commit
aebaa48d78
|
|
@ -144,12 +144,8 @@ func (opts *MapOpts) Set(value string) error {
|
||||||
}
|
}
|
||||||
value = v
|
value = v
|
||||||
}
|
}
|
||||||
vals := strings.SplitN(value, "=", 2)
|
key, val, _ := strings.Cut(value, "=")
|
||||||
if len(vals) == 1 {
|
opts.values[key] = val
|
||||||
(opts.values)[vals[0]] = ""
|
|
||||||
} else {
|
|
||||||
(opts.values)[vals[0]] = vals[1]
|
|
||||||
}
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -46,14 +46,13 @@ func ParseFlag(arg string, prev Args) (Args, error) {
|
||||||
return filters, nil
|
return filters, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
if !strings.Contains(arg, "=") {
|
name, value, ok := strings.Cut(arg, "=")
|
||||||
|
if !ok {
|
||||||
return filters, ErrBadFormat
|
return filters, ErrBadFormat
|
||||||
}
|
}
|
||||||
|
|
||||||
f := strings.SplitN(arg, "=", 2)
|
name = strings.ToLower(strings.TrimSpace(name))
|
||||||
|
value = strings.TrimSpace(value)
|
||||||
name := strings.ToLower(strings.TrimSpace(f[0]))
|
|
||||||
value := strings.TrimSpace(f[1])
|
|
||||||
|
|
||||||
filters.Add(name, value)
|
filters.Add(name, value)
|
||||||
|
|
||||||
|
|
@ -140,14 +139,14 @@ func (args Args) MatchKVList(key string, sources map[string]string) bool {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
for value := range fieldValues {
|
for field := range fieldValues {
|
||||||
testKV := strings.SplitN(value, "=", 2)
|
key, val, gotVal := strings.Cut(field, "=")
|
||||||
|
|
||||||
v, ok := sources[testKV[0]]
|
v, ok := sources[key]
|
||||||
if !ok {
|
if !ok {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
if len(testKV) == 2 && testKV[1] != v {
|
if gotVal && val != v {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue