aboutsummaryrefslogtreecommitdiff
path: root/src/bytes
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2014-09-18 19:40:31 -0400
committerRuss Cox <rsc@golang.org>2014-09-18 19:40:31 -0400
commite9ec8e7a2693b322287a96100750c6f00cf574ef (patch)
treedf5e1be79fba71beb2b668e37de62501484ef3f4 /src/bytes
parentab76638cdc1705ec4f22cb6f757c1b542b388692 (diff)
downloadgo-e9ec8e7a2693b322287a96100750c6f00cf574ef.tar.xz
bytes, strings: document that FieldsFunc f must not be stateful
Fixes #8738. LGTM=adg R=golang-codereviews, adg CC=golang-codereviews https://golang.org/cl/143260045
Diffstat (limited to 'src/bytes')
-rw-r--r--src/bytes/bytes.go2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/bytes/bytes.go b/src/bytes/bytes.go
index 34c22bbfb1..7634707b3c 100644
--- a/src/bytes/bytes.go
+++ b/src/bytes/bytes.go
@@ -267,6 +267,8 @@ func Fields(s []byte) [][]byte {
// It splits the slice s at each run of code points c satisfying f(c) and
// returns a slice of subslices of s. If all code points in s satisfy f(c), or
// len(s) == 0, an empty slice is returned.
+// FieldsFunc makes no guarantees about the order in which it calls f(c).
+// If f does not return consistent results for a given c, FieldsFunc may crash.
func FieldsFunc(s []byte, f func(rune) bool) [][]byte {
n := 0
inField := false