]> Cypherpunks repositories - gostls13.git/commit
strings: implement a faster generic Replacer
authorEric Eisner <eric.d.eisner@gmail.com>
Mon, 17 Sep 2012 01:50:15 +0000 (11:50 +1000)
committerNigel Tao <nigeltao@golang.org>
Mon, 17 Sep 2012 01:50:15 +0000 (11:50 +1000)
commit0aad3cdc59c245eb5a09159f43c0bf590893d9ab
treef80e7252b02937260ccc3e7bdcfe2831f5e72fa8
parenta1a414e6f12f759adde426a5bdd8985d0ee7067d
strings: implement a faster generic Replacer

This also fixes the semantics of some corner cases with the empty
match. TODOs for genericReplacer in the tests are fixed.

benchmark                  old ns/op    new ns/op    delta
BenchmarkGenericNoMatch        71395         3132  -95.61%
BenchmarkGenericMatch1         75610        20280  -73.18%
BenchmarkGenericMatch2        837995        86725  -89.65%

R=nigeltao, rsc
CC=golang-dev
https://golang.org/cl/6492076
src/pkg/strings/export_test.go
src/pkg/strings/replace.go
src/pkg/strings/replace_test.go