some testing ang enchancments

This commit is contained in:
2026-02-06 13:46:09 +03:00
parent 948ac0a1b0
commit 4ba746956a
7 changed files with 286 additions and 94 deletions

14
map.go
View File

@@ -34,6 +34,20 @@ func (m HashMap[K, V]) Contains(key K) bool {
_, ok := m[key]
return ok
}
func (m HashMap[K, V]) Keys() []K {
keys := make([]K, 0, m.Len())
for k := range m {
keys = append(keys, k)
}
return keys
}
func (m HashMap[K, V]) Values() []V {
values := make([]V, 0, m.Len())
for _, v := range m {
values = append(values, v)
}
return values
}
func (m HashMap[K, V]) Filter(f func(K, V) bool) HashMap[K, V] {
out := make(HashMap[K, V])
for k, v := range m {