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 [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/golang-nuts/ba7b2c95-829b-4da4-916a-d53a06ec3428n%40googlegroups.com.