aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorapocelipes <seve3r@outlook.com>2023-09-14 18:43:14 +0000
committerGopher Robot <gobot@golang.org>2023-09-15 12:57:52 +0000
commit1fde99cd6eff725f5cc13748a43b4aef3de557c8 (patch)
treec85262d3c82346b40ffa3d1dc69887d8f20be22d /src
parent00073c25f65947dc4a331dcc6b20cb215fb03341 (diff)
downloadgo-1fde99cd6eff725f5cc13748a43b4aef3de557c8.tar.xz
net: use bytealg.LastIndexByteString
There is no need to handwrite the "last" function, the bytealg package already provides "LastIndexByteString". Change-Id: I6000705bffe8450a10cf8f3fa716a8d4605ada1f GitHub-Last-Rev: 6627c65fb40fad96239edd28bde27a30f9f8f544 GitHub-Pull-Request: golang/go#62647 Reviewed-on: https://go-review.googlesource.com/c/go/+/527976 Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Ian Lance Taylor <iant@google.com>
Diffstat (limited to 'src')
-rw-r--r--src/net/dial.go3
-rw-r--r--src/net/ipsock.go4
-rw-r--r--src/net/parse.go11
3 files changed, 4 insertions, 14 deletions
diff --git a/src/net/dial.go b/src/net/dial.go
index dd34b6cef2..7ca9b4a468 100644
--- a/src/net/dial.go
+++ b/src/net/dial.go
@@ -6,6 +6,7 @@ package net
import (
"context"
+ "internal/bytealg"
"internal/godebug"
"internal/nettrace"
"syscall"
@@ -226,7 +227,7 @@ func (d *Dialer) fallbackDelay() time.Duration {
}
func parseNetwork(ctx context.Context, network string, needsProto bool) (afnet string, proto int, err error) {
- i := last(network, ':')
+ i := bytealg.LastIndexByteString(network, ':')
if i < 0 { // no colon
switch network {
case "tcp", "tcp4", "tcp6":
diff --git a/src/net/ipsock.go b/src/net/ipsock.go
index cdd097c2d3..176dbc748e 100644
--- a/src/net/ipsock.go
+++ b/src/net/ipsock.go
@@ -172,7 +172,7 @@ func SplitHostPort(hostport string) (host, port string, err error) {
j, k := 0, 0
// The port starts after the last colon.
- i := last(hostport, ':')
+ i := bytealg.LastIndexByteString(hostport, ':')
if i < 0 {
return addrErr(hostport, missingPort)
}
@@ -219,7 +219,7 @@ func SplitHostPort(hostport string) (host, port string, err error) {
func splitHostZone(s string) (host, zone string) {
// The IPv6 scoped addressing zone identifier starts after the
// last percent sign.
- if i := last(s, '%'); i > 0 {
+ if i := bytealg.LastIndexByteString(s, '%'); i > 0 {
host, zone = s[:i], s[i+1:]
} else {
host = s
diff --git a/src/net/parse.go b/src/net/parse.go
index f2e790e48f..29dffad43c 100644
--- a/src/net/parse.go
+++ b/src/net/parse.go
@@ -180,17 +180,6 @@ func xtoi2(s string, e byte) (byte, bool) {
return byte(n), ok && ei == 2
}
-// Index of rightmost occurrence of b in s.
-func last(s string, b byte) int {
- i := len(s)
- for i--; i >= 0; i-- {
- if s[i] == b {
- break
- }
- }
- return i
-}
-
// hasUpperCase tells whether the given string contains at least one upper-case.
func hasUpperCase(s string) bool {
for i := range s {