Is it idiomatic to mix-&-match pointer and value method receivers for a given type? or in *general*, if a single method requires a pointer receiver than *all methods* should take a pointer, regardless if a value receiver is appropriate?
For example, should Foo.SetVal also be a pointer receiver even though a value receiver would be acceptable? https://play.golang.org/p/rd_6BLol8O type Foo struct{ ref []int val int } // would not set if method receiver is value receiver (foo Foo) func (foo *Foo) SetRef(ref []int) { foo.ref = ref } func (foo Foo) SetVal(val int) { foo.val = val } func main() { foo := Foo{} foo.SetRef([]int{1,2,3}) foo.SetVal(1) fmt.Printf("%v",foo) // {[1 2 3] 0} } -- 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. For more options, visit https://groups.google.com/d/optout.