type posMap … type poser … type ender … func (m *posMap) pos(p poser) src.XPos { … } func (m *posMap) end(p ender) src.XPos { … } func (m *posMap) makeXPos(pos syntax.Pos) src.XPos { … } // makeSrcPosBase translates from a *syntax.PosBase to a *src.PosBase. func (m *posMap) makeSrcPosBase(b0 *syntax.PosBase) *src.PosBase { … }