func (c *converter) convertInterface(v *gotypes.Interface) *types.Interface { if v == nil { return nil } if v, ok := c.converted[v]; ok { return v.(*types.Interface) } ret := types.NewInterface(nil, nil) c.converted[v] = ret for i := 0; i < v.NumExplicitMethods(); i++ { ret.AddMethod(c.convertFunc(v.ExplicitMethod(i))) } for i := 0; i < v.NumEmbeddeds(); i++ { ret.AddEmbedded(c.convertNamed(v.Embedded(i))) } c.ifaces = append(c.ifaces, ret) return ret }