func (r *pointstoResult) toSerial(res *serial.Result, fset *token.FileSet) { var pts []serial.PointsTo for _, ptr := range r.ptrs { var namePos string if nt, ok := deref(ptr.typ).(*types.Named); ok { namePos = fset.Position(nt.Obj().Pos()).String() } var labels []serial.PointsToLabel for _, l := range ptr.labels { labels = append(labels, serial.PointsToLabel{ Pos: fset.Position(l.Pos()).String(), Desc: l.String(), }) } pts = append(pts, serial.PointsTo{ Type: r.qpos.typeString(ptr.typ), NamePos: namePos, Labels: labels, }) } res.PointsTo = pts }