Skip to content

Commit 5f542b2

Browse files
camc314andrewbranch
authored andcommitted
perf(tspath): void []byte allocation in ToFileNameLowerCase (microsoft#1581)
1 parent 5a6d3b6 commit 5f542b2

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

internal/tspath/path.go

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -583,7 +583,9 @@ func ToFileNameLowerCase(fileName string) string {
583583

584584
ascii := true
585585
needsLower := false
586-
for _, c := range []byte(fileName) {
586+
fileNameLen := len(fileName)
587+
for i := range fileNameLen {
588+
c := fileName[i]
587589
if c >= 0x80 {
588590
ascii = false
589591
break
@@ -596,8 +598,9 @@ func ToFileNameLowerCase(fileName string) string {
596598
if !needsLower {
597599
return fileName
598600
}
599-
b := make([]byte, len(fileName))
600-
for i, c := range []byte(fileName) {
601+
b := make([]byte, fileNameLen)
602+
for i := range fileNameLen {
603+
c := fileName[i]
601604
if 'A' <= c && c <= 'Z' {
602605
c += 'a' - 'A' // +32
603606
}

0 commit comments

Comments
 (0)