aboutsummaryrefslogtreecommitdiff
path: root/src/strings
diff options
context:
space:
mode:
Diffstat (limited to 'src/strings')
-rw-r--r--src/strings/iter.go6
-rw-r--r--src/strings/reader.go4
-rw-r--r--src/strings/strings.go16
3 files changed, 5 insertions, 21 deletions
diff --git a/src/strings/iter.go b/src/strings/iter.go
index 69fe031739..84e763a834 100644
--- a/src/strings/iter.go
+++ b/src/strings/iter.go
@@ -117,11 +117,7 @@ func FieldsFuncSeq(s string, f func(rune) bool) iter.Seq[string] {
return func(yield func(string) bool) {
start := -1
for i := 0; i < len(s); {
- size := 1
- r := rune(s[i])
- if r >= utf8.RuneSelf {
- r, size = utf8.DecodeRuneInString(s[i:])
- }
+ r, size := utf8.DecodeRuneInString(s[i:])
if f(r) {
if start >= 0 {
if !yield(s[start:i]) {
diff --git a/src/strings/reader.go b/src/strings/reader.go
index 497ffb7a39..f12c9b18b3 100644
--- a/src/strings/reader.go
+++ b/src/strings/reader.go
@@ -90,10 +90,6 @@ func (r *Reader) ReadRune() (ch rune, size int, err error) {
return 0, 0, io.EOF
}
r.prevRune = int(r.i)
- if c := r.s[r.i]; c < utf8.RuneSelf {
- r.i++
- return rune(c), 1, nil
- }
ch, size = utf8.DecodeRuneInString(r.s[r.i:])
r.i += int64(size)
return
diff --git a/src/strings/strings.go b/src/strings/strings.go
index 74007977d9..3cc3e79f98 100644
--- a/src/strings/strings.go
+++ b/src/strings/strings.go
@@ -896,7 +896,7 @@ func TrimLeftFunc(s string, f func(rune) bool) string {
// Unicode code points c satisfying f(c) removed.
func TrimRightFunc(s string, f func(rune) bool) string {
i := lastIndexFunc(s, f, false)
- if i >= 0 && s[i] >= utf8.RuneSelf {
+ if i >= 0 {
_, wid := utf8.DecodeRuneInString(s[i:])
i += wid
} else {
@@ -1028,10 +1028,7 @@ func trimLeftASCII(s string, as *asciiSet) string {
func trimLeftUnicode(s, cutset string) string {
for len(s) > 0 {
- r, n := rune(s[0]), 1
- if r >= utf8.RuneSelf {
- r, n = utf8.DecodeRuneInString(s)
- }
+ r, n := utf8.DecodeRuneInString(s)
if !ContainsRune(cutset, r) {
break
}
@@ -1224,13 +1221,8 @@ hasUnicode:
}
// Extract first rune from second string.
- var tr rune
- if t[0] < utf8.RuneSelf {
- tr, t = rune(t[0]), t[1:]
- } else {
- r, size := utf8.DecodeRuneInString(t)
- tr, t = r, t[size:]
- }
+ tr, size := utf8.DecodeRuneInString(t)
+ t = t[size:]
// If they match, keep going; if not, return false.