Files
acme-dns/vendor/github.com/imkira/go-interpol/examples/advanced.go
2018-01-22 11:19:33 +02:00

38 lines
609 B
Go

package main
import (
"io"
"log"
"os"
"strings"
"github.com/imkira/go-interpol"
)
func main() {
template, err := os.Open("template.txt")
if err != nil {
log.Fatal(err)
}
defer template.Close()
output, err := os.Create("output.txt")
if err != nil {
log.Fatal(err)
}
defer output.Close()
opts := &interpol.Options{
Template: template,
Format: toUpper,
Output: output,
}
i := interpol.NewWithOptions(opts)
if err := i.Interpolate(); err != nil {
log.Fatal(err)
}
}
func toUpper(key string, w io.Writer) error {
_, err := w.Write([]byte(strings.ToUpper(key)))
return err
}