feat: publish v1.0.0-rc.36-custom.1

This commit is contained in:
Codex committed 2026-09-11 05:07:48 +08:00
commit 3a7e8f3b54
2381 files changed
+551494

No files matched your search

+26
View File
@@ -0,0 +1,26 @@
package jsplugin
// asciiFold maps only 'A'–'Z' onto 'a'–'z'. Every other byte is unchanged.
// Unicode case folding is intentionally not applied: U+212A (KELVIN SIGN)
// must not become 'k' and impersonate an ASCII model name.
func asciiFold(s string) string {
var buf []byte
for i := 0; i < len(s); i++ {
c := s[i]
if c >= 'A' && c <= 'Z' {
if buf == nil {
buf = []byte(s)
}
buf[i] = c + ('a' - 'A')
}
}
if buf == nil {
return s
}
return string(buf)
}
// ASCIIFold is the exported form of asciiFold for consumers outside this package.
func ASCIIFold(s string) string {
return asciiFold(s)
}