aboutsummaryrefslogtreecommitdiff
path: root/eval.go
diff options
context:
space:
mode:
authorFumitoshi Ukai <fumitoshi.ukai@gmail.com>2015-06-19 15:46:21 +0900
committerFumitoshi Ukai <fumitoshi.ukai@gmail.com>2015-06-19 15:46:21 +0900
commit77411fb4bdcab6222a51ef1a4a0f625b7f4a4523 (patch)
tree1feb5e408d621b5ddba50388ca465b6b1984d14b /eval.go
parentce14acbe573bdf2853e67ea418940e835c07409b (diff)
downloadkati-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.go2
1 files changed, 1 insertions, 1 deletions
diff --git a/eval.go b/eval.go
index 173ec45..915b852 100644
--- a/eval.go
+++ b/eval.go
@@ -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())