mirror of
https://github.com/openimsdk/open-im-server.git
synced 2025-04-26 03:26:57 +08:00
1
This commit is contained in:
parent
f98d894a4b
commit
64dee9f989
@ -244,6 +244,22 @@ func CompleteAny[K comparable, E any](ks []K, es []E, fn func(e E) K) bool {
|
|||||||
return len(a) == 0
|
return len(a) == 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func Complete[E comparable](a []E, b []E) bool {
|
||||||
|
if len(a) == 0 && len(b) == 0 {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
if (len(a) == 0 && len(b) != 0) || (len(a) != 0 && len(b) == 0) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
t := SliceSet(a)
|
||||||
|
for _, e := range b {
|
||||||
|
if _, ok := t[e]; !ok {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
|
||||||
// MapKey get map keys
|
// MapKey get map keys
|
||||||
func MapKey[K comparable, V any](kv map[K]V) []K {
|
func MapKey[K comparable, V any](kv map[K]V) []K {
|
||||||
ks := make([]K, 0, len(kv))
|
ks := make([]K, 0, len(kv))
|
||||||
@ -290,6 +306,25 @@ func If[T any](isa bool, a, b T) T {
|
|||||||
return b
|
return b
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func Equal[E comparable](a []E, b []E) bool {
|
||||||
|
if len(a) != len(b) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
for i := 0; i < len(a); i++ {
|
||||||
|
if a[i] != b[i] {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
|
||||||
|
// Single
|
||||||
|
|
||||||
|
func Single[E comparable](a, b []E) []E {
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
func UniqueJoin(s ...string) string {
|
func UniqueJoin(s ...string) string {
|
||||||
data, _ := json.Marshal(s)
|
data, _ := json.Marshal(s)
|
||||||
return string(data)
|
return string(data)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user