title: What is the purpose of a method that returns the receiver itself (Go)?
body: <p>This function in pkg go/token makes me wonder why we need a method that returns the receiver itself. </p>
  
  <pre><code>// Token source positions are represented by a Position value.
  // A Position is valid if the line number is &gt; 0.
  //
  type Position struct {
      Filename string; // filename, if any
      Offset   int;    // byte offset, starting at 0
      Line     int;    // line number, starting at 1
      Column   int;    // column number, starting at 1 (character count)
  }
  
  
  // Pos is an accessor method for anonymous Position fields.
  // It returns its receiver.
  //
  func (pos *Position) Pos() Position { return *pos }
  </code></pre>