milvus/pkg/util/funcutil/map.go
jaime c9d0c157ec
Move some modules from internal to public package (#22572)
Signed-off-by: jaime <yun.zhang@zilliz.com>
2023-04-06 19:14:32 +08:00

20 lines
428 B
Go

package funcutil
import "fmt"
func MapReduce(results []map[string]string, method map[string]func(string) error) error {
// TODO: use generic type to reconstruct map[string]string -> [T any] map[string]T
for _, result := range results {
for k, v := range result {
fn, ok := method[k]
if !ok {
return fmt.Errorf("unknown field %s", k)
}
if err := fn(v); err != nil {
return err
}
}
}
return nil
}