milvus/pkg/common/key_value_pairs.go
congqixia 41af0a98fa
Use go-api/v2 for milvus-proto (#24770)
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2023-06-09 01:28:37 +08:00

37 lines
771 B
Go

package common
import (
"reflect"
"github.com/milvus-io/milvus-proto/go-api/v2/commonpb"
)
type KeyValuePairs []*commonpb.KeyValuePair
func (pairs KeyValuePairs) Clone() KeyValuePairs {
clone := make(KeyValuePairs, 0, len(pairs))
for _, pair := range pairs {
clone = append(clone, &commonpb.KeyValuePair{
Key: pair.GetKey(),
Value: pair.GetValue(),
})
}
return clone
}
func (pairs KeyValuePairs) ToMap() map[string]string {
ret := make(map[string]string)
for _, pair := range pairs {
ret[pair.GetKey()] = pair.GetValue()
}
return ret
}
func (pairs KeyValuePairs) Equal(other KeyValuePairs) bool {
return reflect.DeepEqual(pairs.ToMap(), other.ToMap())
}
func CloneKeyValuePairs(pairs KeyValuePairs) KeyValuePairs {
return pairs.Clone()
}