mirror of
https://github.com/coredns/coredns.git
synced 2025-10-28 00:34:24 -04:00
perf: avoid string concatenation in loops (#7572)
* perf: avoid string concatenation in loops Apply perfpsrint linter Signed-off-by: Philippe Antoine <contact@catenacyber.fr> * ci: enable perfsprint Signed-off-by: Philippe Antoine <contact@catenacyber.fr> --------- Signed-off-by: Philippe Antoine <contact@catenacyber.fr>
This commit is contained in:
@@ -1,5 +1,9 @@
|
||||
package auto
|
||||
|
||||
import (
|
||||
"strings"
|
||||
)
|
||||
|
||||
// rewriteToExpand rewrites our template string to one that we can give to regexp.ExpandString. This basically
|
||||
// involves prefixing any '{' with a '$'.
|
||||
func rewriteToExpand(s string) string {
|
||||
@@ -7,14 +11,13 @@ func rewriteToExpand(s string) string {
|
||||
// Also wasteful as we build the string with +=. This is OKish
|
||||
// as we do this during config parsing.
|
||||
|
||||
copy := ""
|
||||
|
||||
var copySb strings.Builder
|
||||
for _, c := range s {
|
||||
if c == '{' {
|
||||
copy += "$"
|
||||
copySb.WriteString("$")
|
||||
}
|
||||
copy += string(c)
|
||||
copySb.WriteString(string(c))
|
||||
}
|
||||
|
||||
return copy
|
||||
return copySb.String()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user