Now, to modify a map element, especially the element type is not a basic type, two hashes are needed to compute. This is often unnecessary and inefficient. For example:
package main type T struct{ N int // ... more fields } func main() { var m = map[string]T{} m["foo"] = T{N: 0} // modify t := m["foo"] // first hashing t.N++ m["foo"] = t // second hashing } Will it be good to add a new builtin function, modify(m Map[Key]Value, k Key, func(v *Value)), to modify map elements with only one hash? A use example: package main type T struct{ N int // ... more fields } func main() { var m = map[string]T{} m["foo"] = T{N: 0} // modify modify(m. "foo", func(t *T) { t.N++ }) } -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/ba7b2c95-829b-4da4-916a-d53a06ec3428n%40googlegroups.com.