title: In golang, is it necessary change all method of a type to have pointer receivers if one of the method must have pointer receiver?
body: <p>I'm studying golang and I'm a little confused about defining methods on values or pointers. As mentioned in the <a href="https://golang.org/doc/faq#methods_on_values_or_pointers" rel="nofollow noreferrer">doc</a>:</p>
  
  <blockquote>
    <p>Next is consistency. If some of the methods of the type must have
    pointer receivers, the rest should too, so the method set is
    consistent regardless of how the type is used. See the section on
    method sets for details.</p>
  </blockquote>
  
  <p>If I have a type T, it need to implement several interfaces. One interface has method which need to use pointer receiver, and methods in another interfaces can work pretty well with value receiver. Is it necessary to change all methods in all interfaces to have pointer receivers? If so, why?</p>