func extractTag(key string, lines []string) string {
	val, present := types.ExtractCommentTags("+", lines)[key]
	if !present || len(val) < 1 {
		return ""
	}
	return val[0]
}
extractTag gets the comment-tags for the key.  If the tag did not exist, it
returns the empty string.
package namer
import (
	"k8s.io/gengo/namer"
	"k8s.io/gengo/types"
)
type TagOverrideNamer struct {
	tagName  string
	fallback namer.Namer
}
func (n *TagOverrideNamer) Name(t *types.Type) string {
	if nameOverride := extractTag(n.tagName, append(t.SecondClosestCommentLines, t.CommentLines...)); nameOverride != "" {
		return nameOverride
	}
	return n.fallback.Name(t)
}
func NewTagOverrideNamer(tagName string, fallback namer.Namer) namer.Namer {
	return &TagOverrideNamer{
		tagName:  tagName,
		fallback: fallback,
	}
}