diff options
| author | 1911860538 <alxps1911@gmail.com> | 2025-09-04 12:30:51 +0000 |
|---|---|---|
| committer | Gopher Robot <gobot@golang.org> | 2025-09-10 13:06:00 -0700 |
| commit | 5cf8ca42e3665c045ccd441d382a72714f90d9bd (patch) | |
| tree | 470e4da0e3ff476ab54ac690a801fbd896775f86 /src/internal | |
| parent | 80a2aae922fa64f0d37b1fc81812d2ef95c0b4e6 (diff) | |
| download | go-5cf8ca42e3665c045ccd441d382a72714f90d9bd.tar.xz | |
internal/trace/raw: use strings.Cut instead of strings.SplitN 2
Replace strings.SplitN with strings.Cut for better performance and readability.
Change-Id: Ia245db62d8c2d1686887cb455f492db15606b57a
GitHub-Last-Rev: e00e164688f79d85d34fdf0d4ef126387ec6c0a0
GitHub-Pull-Request: golang/go#75257
Reviewed-on: https://go-review.googlesource.com/c/go/+/700915
Reviewed-by: Michael Knyszek <mknyszek@google.com>
Auto-Submit: Michael Pratt <mpratt@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Michael Pratt <mpratt@google.com>
Diffstat (limited to 'src/internal')
| -rw-r--r-- | src/internal/trace/raw/textreader.go | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/src/internal/trace/raw/textreader.go b/src/internal/trace/raw/textreader.go index adb111550d..f1544a7052 100644 --- a/src/internal/trace/raw/textreader.go +++ b/src/internal/trace/raw/textreader.go @@ -165,14 +165,13 @@ func readArg(s string) (arg string, value uint64, rest string, err error) { if len(tok) == 0 { return "", 0, s, fmt.Errorf("no argument") } - parts := strings.SplitN(tok, "=", 2) - if len(parts) < 2 { + arg, val, found := strings.Cut(tok, "=") + if !found { return "", 0, s, fmt.Errorf("malformed argument: %q", tok) } - arg = parts[0] - value, err = strconv.ParseUint(parts[1], 10, 64) + value, err = strconv.ParseUint(val, 10, 64) if err != nil { - return arg, value, s, fmt.Errorf("failed to parse argument value %q for arg %q", parts[1], parts[0]) + return arg, value, s, fmt.Errorf("failed to parse argument value %q for arg %q", val, arg) } return } @@ -205,11 +204,11 @@ func readToken(s string) (token, rest string) { } func readData(line string) ([]byte, error) { - parts := strings.SplitN(line, "=", 2) - if len(parts) < 2 || strings.TrimSpace(parts[0]) != "data" { + dk, dv, found := strings.Cut(line, "=") + if !found || strings.TrimSpace(dk) != "data" { return nil, fmt.Errorf("malformed data: %q", line) } - data, err := strconv.Unquote(strings.TrimSpace(parts[1])) + data, err := strconv.Unquote(strings.TrimSpace(dv)) if err != nil { return nil, fmt.Errorf("failed to parse data: %q: %v", line, err) } |
