type TagOverrideNamer … // Name returns the tag value if it exists. It no tag was found the fallback namer will be used func (n *TagOverrideNamer) Name(t *types.Type) string { … } // NewTagOverrideNamer creates a namer.Namer which uses the contents of the given tag as // the name, or falls back to another Namer if the tag is not present. func NewTagOverrideNamer(tagName string, fallback namer.Namer) namer.Namer { … } // extractTag gets the comment-tags for the key. If the tag did not exist, it // returns the empty string. func extractTag(key string, lines []string) string { … }