refactor and typo fixes

This commit is contained in:
yusing
2024-11-02 03:14:47 +08:00
parent 76454df5e6
commit a86d316d07
34 changed files with 160 additions and 128 deletions

View File

@@ -18,9 +18,10 @@ func NearestField(input string, s any) string {
if t.Kind() == reflect.Ptr {
t = t.Elem()
}
if t.Kind() == reflect.Struct {
switch t.Kind() {
case reflect.Struct:
fields = make([]string, 0)
for i := 0; i < t.NumField(); i++ {
for i := range t.NumField() {
jsonTag, ok := t.Field(i).Tag.Lookup("json")
if ok {
fields = append(fields, jsonTag)
@@ -28,13 +29,13 @@ func NearestField(input string, s any) string {
fields = append(fields, t.Field(i).Name)
}
}
} else if t.Kind() == reflect.Map {
case reflect.Map:
keys := reflect.ValueOf(s).MapKeys()
fields = make([]string, len(keys))
for i, key := range keys {
fields[i] = key.String()
}
} else {
default:
panic("unsupported type: " + t.String())
}
}