aboutsummaryrefslogtreecommitdiff
path: root/src/strings
diff options
context:
space:
mode:
authorGabriel Aszalos <gabriel.aszalos@gmail.com>2017-09-25 14:54:37 +0200
committerIan Lance Taylor <iant@golang.org>2017-09-25 18:23:11 +0000
commitc82ee79247e8e82a0699963e5b07ca7db8de5d51 (patch)
treeb9044b19dd87a276ebc8f85bd69ceab76e513b41 /src/strings
parent5db7572ddfd431e14febbf5f006e0408c5f1ae1b (diff)
downloadgo-c82ee79247e8e82a0699963e5b07ca7db8de5d51.tar.xz
strings: improve readability of IndexAny and LastIndexAny functions.
This change removes the check of len(chars) > 0 inside the Index and IndexAny functions which was redundant. Change-Id: Iffbc0f2b3332c6e31c7514b5f644b6fe7bdcfe0d Reviewed-on: https://go-review.googlesource.com/65910 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Joe Tsai <thebrokentoaster@gmail.com>
Diffstat (limited to 'src/strings')
-rw-r--r--src/strings/strings.go52
1 files changed, 24 insertions, 28 deletions
diff --git a/src/strings/strings.go b/src/strings/strings.go
index caabc5affd..a7941fbb90 100644
--- a/src/strings/strings.go
+++ b/src/strings/strings.go
@@ -166,22 +166,20 @@ func IndexRune(s string, r rune) int {
// IndexAny returns the index of the first instance of any Unicode code point
// from chars in s, or -1 if no Unicode code point from chars is present in s.
func IndexAny(s, chars string) int {
- if len(chars) > 0 {
- if len(s) > 8 {
- if as, isASCII := makeASCIISet(chars); isASCII {
- for i := 0; i < len(s); i++ {
- if as.contains(s[i]) {
- return i
- }
+ if len(s) > 8 {
+ if as, isASCII := makeASCIISet(chars); isASCII {
+ for i := 0; i < len(s); i++ {
+ if as.contains(s[i]) {
+ return i
}
- return -1
}
+ return -1
}
- for i, c := range s {
- for _, m := range chars {
- if c == m {
- return i
- }
+ }
+ for i, c := range s {
+ for _, m := range chars {
+ if c == m {
+ return i
}
}
}
@@ -192,24 +190,22 @@ func IndexAny(s, chars string) int {
// point from chars in s, or -1 if no Unicode code point from chars is
// present in s.
func LastIndexAny(s, chars string) int {
- if len(chars) > 0 {
- if len(s) > 8 {
- if as, isASCII := makeASCIISet(chars); isASCII {
- for i := len(s) - 1; i >= 0; i-- {
- if as.contains(s[i]) {
- return i
- }
+ if len(s) > 8 {
+ if as, isASCII := makeASCIISet(chars); isASCII {
+ for i := len(s) - 1; i >= 0; i-- {
+ if as.contains(s[i]) {
+ return i
}
- return -1
}
+ return -1
}
- for i := len(s); i > 0; {
- r, size := utf8.DecodeLastRuneInString(s[:i])
- i -= size
- for _, c := range chars {
- if r == c {
- return i
- }
+ }
+ for i := len(s); i > 0; {
+ r, size := utf8.DecodeLastRuneInString(s[:i])
+ i -= size
+ for _, c := range chars {
+ if r == c {
+ return i
}
}
}