github.com/rivy-go/git-changelog@v0.0.0-20240424224517-b86e6ab57773/cmd/git-changelog/template_builder.go (about)

     1  package main
     2  
     3  const templateTagNameAnchor = "<a name=\"{{ .Tag.Name }}\"></a>\n"
     4  
     5  // TemplateBuilder ...
     6  type TemplateBuilder interface {
     7  	Builder
     8  }
     9  
    10  // TemplateBuilderFactory ...
    11  type TemplateBuilderFactory = func(string) TemplateBuilder
    12  
    13  func templateBuilderFactory(template string) TemplateBuilder {
    14  	switch template {
    15  	case tplKeepAChangelog.display:
    16  		return NewKACTemplateBuilder()
    17  	default:
    18  		return NewCustomTemplateBuilder()
    19  	}
    20  }