mirror of
https://github.com/golang/go
synced 2024-11-23 14:30:02 -07:00
fmt, strconv: document use of Unicode replacement character in %q
Fixes #51526. Change-Id: I365a763454bd201f804df29f800416b1731b8ebc Reviewed-on: https://go-review.googlesource.com/c/go/+/390436 Trust: Russ Cox <rsc@golang.org> Run-TryBot: Russ Cox <rsc@golang.org> Reviewed-by: Rob Pike <r@golang.org> TryBot-Result: Gopher Robot <gobot@golang.org>
This commit is contained in:
parent
33e752edd3
commit
3efc7215cb
@ -110,6 +110,10 @@ For complex numbers, the width and precision apply to the two
|
||||
components independently and the result is parenthesized, so %f applied
|
||||
to 1.2+3.4i produces (1.200000+3.400000i).
|
||||
|
||||
When formatting a single integer code point or a rune string (type []rune)
|
||||
with %q, invalid Unicode code points are changed to the Unicode replacement
|
||||
character, U+FFFD, as in strconv.QuoteRune.
|
||||
|
||||
Other flags:
|
||||
+ always print a sign for numeric values;
|
||||
guarantee ASCII-only output for %q (%+q)
|
||||
|
@ -165,6 +165,8 @@ func AppendQuoteToGraphic(dst []byte, s string) []byte {
|
||||
// QuoteRune returns a single-quoted Go character literal representing the
|
||||
// rune. The returned string uses Go escape sequences (\t, \n, \xFF, \u0100)
|
||||
// for control characters and non-printable characters as defined by IsPrint.
|
||||
// If r is not a valid Unicode code point, it is interpreted as the Unicode
|
||||
// replacement character U+FFFD.
|
||||
func QuoteRune(r rune) string {
|
||||
return quoteRuneWith(r, '\'', false, false)
|
||||
}
|
||||
@ -179,6 +181,8 @@ func AppendQuoteRune(dst []byte, r rune) []byte {
|
||||
// the rune. The returned string uses Go escape sequences (\t, \n, \xFF,
|
||||
// \u0100) for non-ASCII characters and non-printable characters as defined
|
||||
// by IsPrint.
|
||||
// If r is not a valid Unicode code point, it is interpreted as the Unicode
|
||||
// replacement character U+FFFD.
|
||||
func QuoteRuneToASCII(r rune) string {
|
||||
return quoteRuneWith(r, '\'', true, false)
|
||||
}
|
||||
@ -193,6 +197,8 @@ func AppendQuoteRuneToASCII(dst []byte, r rune) []byte {
|
||||
// the rune. If the rune is not a Unicode graphic character,
|
||||
// as defined by IsGraphic, the returned string will use a Go escape sequence
|
||||
// (\t, \n, \xFF, \u0100).
|
||||
// If r is not a valid Unicode code point, it is interpreted as the Unicode
|
||||
// replacement character U+FFFD.
|
||||
func QuoteRuneToGraphic(r rune) string {
|
||||
return quoteRuneWith(r, '\'', false, true)
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user