mh-cbon / template-tree-simplifier

simplify a template AST via a serie of transformations

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

template-tree-simplifier

GoDoc

A package to simplify a template AST via a serie of transformations.

It transforms

{{"some" | split (("what" | lower) | up)}}

into

{{$var1 := lower "what"}}{{$var0 := up $var1}}{{split $var0 "some"}}

Install

go get github.com/mh-cbon/template-tree-simplifier
glide get github.com/mh-cbon/template-tree-simplifier

Usage

package main

import (
	"fmt"
	"github.com/mh-cbon/template-tree-simplifier/simplifier"
	"text/template"
)

func main() {
	file := "cli/tpl/test.tpl"
	fmt.Println(file)

	data := nil
	funcs := template.FuncMap{}

	tpl, err := template.New("").Funcs(funcs).ParseFiles(file)
	if err != nil {
		panic(err)
	}

	simplifier.Transform(t, data, funcs)
}

About

simplify a template AST via a serie of transformations

License:MIT License


Languages

Language:Go 100.0%Language:Smarty 0.0%