]> Cypherpunks repositories - gostls13.git/commit
text/template/parse: use strings.Builder in String methods
authorAriel Mashraki <ariel@mashraki.co.il>
Mon, 30 Sep 2019 22:10:44 +0000 (01:10 +0300)
committerEmmanuel Odeke <emm.odeke@gmail.com>
Tue, 1 Oct 2019 07:16:47 +0000 (07:16 +0000)
commit4f13a9c5b1bfc9ec2213d9ee7d9df49661b119dd
tree22f3ad5b63a4450d83881580c85f379201428b9e
parentc1635ad8f0bb9fbe5bfbf0a633c78a03930758c4
text/template/parse: use strings.Builder in String methods

As mentioned in godoc, strings.Builder is more efficient for
concatenating and building strings.
Running a simple bench test on VariableNode.String() gives:

benchmark                     old ns/op     new ns/op     delta
BenchmarkParseLarge-8         25676831      24453285      -4.77%
BenchmarkVariableString-8     296           115           -61.15%

benchmark                     old allocs     new allocs     delta
BenchmarkVariableString-8     8              3              -62.50%

benchmark                     old bytes     new bytes     delta
BenchmarkVariableString-8     112           72            -35.71%

Change-Id: I13c9340080738fcad1edeed859d33ba608e4b05a
Reviewed-on: https://go-review.googlesource.com/c/go/+/198078
Reviewed-by: Emmanuel Odeke <emm.odeke@gmail.com>
Run-TryBot: Emmanuel Odeke <emm.odeke@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
src/text/template/parse/node.go
src/text/template/parse/parse_test.go