16 lines
544 B
Go
16 lines
544 B
Go
package prompt
|
|
|
|
import "text/template"
|
|
|
|
// CompileTemplate checks static syntax with the same grammar and function
|
|
// names as rendering, without evaluating request inputs or variables.
|
|
func CompileTemplate(name, raw string) (*template.Template, error) {
|
|
return parseTemplate(name, raw, template.FuncMap{
|
|
"input": func(string) (string, error) { return "", nil },
|
|
})
|
|
}
|
|
|
|
func parseTemplate(name, raw string, funcs template.FuncMap) (*template.Template, error) {
|
|
return template.New(name).Funcs(funcs).Option("missingkey=error").Parse(raw)
|
|
}
|