diff options
author | Fumitoshi Ukai <fumitoshi.ukai@gmail.com> | 2015-06-19 15:46:21 +0900 |
---|---|---|
committer | Fumitoshi Ukai <fumitoshi.ukai@gmail.com> | 2015-06-19 15:46:21 +0900 |
commit | 77411fb4bdcab6222a51ef1a4a0f625b7f4a4523 (patch) | |
tree | 1feb5e408d621b5ddba50388ca465b6b1984d14b /eval.go | |
parent | ce14acbe573bdf2853e67ea418940e835c07409b (diff) | |
download | kati-77411fb4bdcab6222a51ef1a4a0f625b7f4a4523.tar.gz |
reduce allocation in funcPatsubst
benchmark old ns/op new ns/op delta
BenchmarkFuncPatsubst 2030 1102 -45.71%
benchmark old allocs new allocs delta
BenchmarkFuncPatsubst 9 1 -88.89%
benchmark old bytes new bytes delta
BenchmarkFuncPatsubst 297 32 -89.23%
Diffstat (limited to 'eval.go')
-rw-r--r-- | eval.go | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -73,7 +73,7 @@ func newEvaluator(vars map[string]Var) *Evaluator { } func (ev *Evaluator) args(buf *buffer, args ...Value) [][]byte { - var pos []int + pos := make([]int, 0, len(args)) for _, arg := range args { arg.Eval(buf, ev) pos = append(pos, buf.Len()) |