diff options
| author | Dave Henderson <dhenderson@gmail.com> | 2017-12-29 20:56:47 +0100 |
|---|---|---|
| committer | Dave Henderson <dhenderson@gmail.com> | 2017-12-29 21:35:25 +0100 |
| commit | b98fbcd880d80a19e3a5b76601a3ba35fadf4c3c (patch) | |
| tree | 556fd055c0c9063ceb37b08018dc4b9d65f3ad54 /gomplate.go | |
| parent | 63a99be4de3e93251a850cb2a8a18b43e6018291 (diff) | |
Naming template after input filename
Signed-off-by: Dave Henderson <dhenderson@gmail.com>
Diffstat (limited to 'gomplate.go')
| -rw-r--r-- | gomplate.go | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/gomplate.go b/gomplate.go index d1c6bb68..6bb3243a 100644 --- a/gomplate.go +++ b/gomplate.go @@ -8,8 +8,8 @@ import ( "github.com/hairyhenderson/gomplate/data" ) -func (g *Gomplate) createTemplate() *template.Template { - return template.New("template").Funcs(g.funcMap).Option("missingkey=error") +func (g *Gomplate) createTemplate(name string) *template.Template { + return template.New(name).Funcs(g.funcMap).Option("missingkey=error") } // Gomplate - @@ -20,9 +20,9 @@ type Gomplate struct { } // RunTemplate - -func (g *Gomplate) RunTemplate(text string, out io.Writer) error { +func (g *Gomplate) RunTemplate(in *input, out io.Writer) error { context := &Context{} - tmpl, err := g.createTemplate().Delims(g.leftDelim, g.rightDelim).Parse(text) + tmpl, err := g.createTemplate(in.name).Delims(g.leftDelim, g.rightDelim).Parse(in.contents) if err != nil { return err } @@ -39,6 +39,12 @@ func NewGomplate(d *data.Data, leftDelim, rightDelim string) *Gomplate { } } +// input - models an input file... +type input struct { + name string + contents string +} + func runTemplate(o *GomplateOpts) error { defer runCleanupHooks() d := data.NewData(o.dataSources, o.dataSourceHeaders) @@ -59,14 +65,14 @@ func runTemplate(o *GomplateOpts) error { } // Called from process.go ... -func renderTemplate(g *Gomplate, inString string, outPath string) error { +func renderTemplate(g *Gomplate, in *input, outPath string) error { outFile, err := openOutFile(outPath) if err != nil { return err } // nolint: errcheck defer outFile.Close() - err = g.RunTemplate(inString, outFile) + err = g.RunTemplate(in, outFile) return err } |
