Documentation
¶
Index ¶
- func MapToJsonToMap(data map[string]interface{}) map[string]interface{}
- func ParserJson(text string) map[string]interface{}
- func ParserLineGroupBy(text string) map[string]interface{}
- func ParserSQL(text string) map[string]interface{}
- func ParserTabRow(text string) map[string]interface{}
- func PrintMapToJson(data map[string]interface{}) string
- func TempExecutor(data map[string]interface{}, tmplText string) string
- func WithParserLineGroupByCount(count int) func(text string) map[string]interface{}
- func WithParserTabRowBySep(sep string) func(text string) map[string]interface{}
- type ExecutorFunc
- type Generator
- func (g *Generator) Exec(opts ...OptionFunc) string
- func (g *Generator) ExecToDebugLog(opts ...OptionFunc) error
- func (g *Generator) ExecToFile(filename string, opts ...OptionFunc) error
- func (g *Generator) Json() string
- func (g *Generator) JsonIndent() string
- func (g *Generator) Source(text string, opts ...OptionFunc)
- func (g *Generator) SourceFile(filename string, opts ...OptionFunc)
- func (g *Generator) Temp(text string, opts ...OptionFunc) error
- func (g *Generator) TempFile(filename string, opts ...OptionFunc) error
- type OptionFunc
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func MapToJsonToMap ¶
func ParserJson ¶
func ParserLineGroupBy ¶
func ParserTabRow ¶
func PrintMapToJson ¶
func WithParserLineGroupByCount ¶
根据行数分组,自定义行数
func WithParserTabRowBySep ¶
按行和列分组,自定义列的分隔符
Types ¶
type ExecutorFunc ¶
func WithLineExecutor ¶
func WithLineExecutor(f func(data map[string]interface{}) func(line string) string) ExecutorFunc
逐行格式化模板的执行器,注入格式化函数
func WithTempExecutor ¶
func WithTempExecutor(t *template.Template) ExecutorFunc
type Generator ¶
type Generator struct {
OriData interface{} // 解释器读取文本后生成的数据
Data map[string]interface{} // OriData 序列化为JSON后,再反序列化成 Data
Parser func(text string) map[string]interface{} // 解释器
TmplText string // 模板
Executor ExecutorFunc // 执行器
}
Generator 生成器,路径如下:
文本 => 解析器(Parser) => Data(Json Map) + 模板 => 执行器(Executor) => 结果
func NewGenerator ¶
func NewGenerator(opts ...OptionFunc) *Generator
func (*Generator) ExecToDebugLog ¶
func (g *Generator) ExecToDebugLog(opts ...OptionFunc) error
执行模版生成至详细日志
func (*Generator) ExecToFile ¶
func (g *Generator) ExecToFile(filename string, opts ...OptionFunc) error
执行模版生成文本至文件
func (*Generator) SourceFile ¶
func (g *Generator) SourceFile(filename string, opts ...OptionFunc)
从文件中读取文本
type OptionFunc ¶
type OptionFunc func(*Generator)
func ConfigExecutor ¶
func ConfigExecutor(e ExecutorFunc) OptionFunc
func ConfigParser ¶
func ConfigParser(parser func(text string) map[string]interface{}) OptionFunc
Click to show internal directories.
Click to hide internal directories.