]> Cypherpunks.ru repositories - gostls13.git/blobdiff - src/maps/maps.go
maps: remove Keys and Values
[gostls13.git] / src / maps / maps.go
index 4dabb7caa33171205f3b6633aae024285ea0742a..befde18c9c973433cd3fecfc0a3982371c77c06c 100644 (file)
@@ -5,34 +5,6 @@
 // Package maps defines various functions useful with maps of any type.
 package maps
 
-import "unsafe"
-
-// keys is implemented in the runtime package.
-//
-//go:noescape
-func keys(m any, slice unsafe.Pointer)
-
-// Keys returns the keys of the map m.
-// The keys will be in an indeterminate order.
-func Keys[M ~map[K]V, K comparable, V any](m M) []K {
-       r := make([]K, 0, len(m))
-       keys(m, unsafe.Pointer(&r))
-       return r
-}
-
-// values is implemented in the runtime package.
-//
-//go:noescape
-func values(m any, slice unsafe.Pointer)
-
-// Values returns the values of the map m.
-// The values will be in an indeterminate order.
-func Values[M ~map[K]V, K comparable, V any](m M) []V {
-       r := make([]V, 0, len(m))
-       values(m, unsafe.Pointer(&r))
-       return r
-}
-
 // Equal reports whether two maps contain the same key/value pairs.
 // Values are compared using ==.
 func Equal[M1, M2 ~map[K]V, K, V comparable](m1 M1, m2 M2) bool {