]> Cypherpunks repositories - gostls13.git/commitdiff
strconv: update Unquote example to be more concise
authorSabin Mihai Rapan <sabin.rapan@gmail.com>
Mon, 5 Feb 2018 17:44:09 +0000 (19:44 +0200)
committerBrad Fitzpatrick <bradfitz@golang.org>
Mon, 7 May 2018 20:39:37 +0000 (20:39 +0000)
Changed the example to convey the intent of the Unquote function
in a more succint way.

Fixes #23693

Change-Id: I49465641d730e70b5af0d47057335af39882bcec
Reviewed-on: https://go-review.googlesource.com/92015
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>

src/strconv/example_test.go

index 01fbbc0fb9eb59df0e06e5b5479693cd1239efa4..5c2e8a9b5608b22c7977df185ed44ef731efa5ba 100644 (file)
@@ -281,27 +281,23 @@ func ExampleQuoteToASCII() {
 }
 
 func ExampleUnquote() {
-       test := func(s string) {
-               t, err := strconv.Unquote(s)
-               if err != nil {
-                       fmt.Printf("Unquote(%#v): %v\n", s, err)
-               } else {
-                       fmt.Printf("Unquote(%#v) = %v\n", s, t)
-               }
-       }
-
-       s := `\"Fran & Freddie's Diner\t\u263a\"\"`
-       // If the string doesn't have quotes, it can't be unquoted.
-       test(s) // invalid syntax
-       test("`" + s + "`")
-       test(`"` + s + `"`)
-       test(`'\u263a'`)
+       s, err := strconv.Unquote("You can't unquote a string without quotes")
+       fmt.Printf("%q, %v\n", s, err)
+       s, err = strconv.Unquote("\"The string must be either double-quoted\"")
+       fmt.Printf("%q, %v\n", s, err)
+       s, err = strconv.Unquote("`or backquoted.`")
+       fmt.Printf("%q, %v\n", s, err)
+       s, err = strconv.Unquote("'\u263a'") // single character only allowed in single quotes
+       fmt.Printf("%q, %v\n", s, err)
+       s, err = strconv.Unquote("'\u2639\u2639'")
+       fmt.Printf("%q, %v\n", s, err)
 
        // Output:
-       // Unquote("\\\"Fran & Freddie's Diner\\t\\u263a\\\"\\\""): invalid syntax
-       // Unquote("`\\\"Fran & Freddie's Diner\\t\\u263a\\\"\\\"`") = \"Fran & Freddie's Diner\t\u263a\"\"
-       // Unquote("\"\\\"Fran & Freddie's Diner\\t\\u263a\\\"\\\"\"") = "Fran & Freddie's Diner        ☺""
-       // Unquote("'\\u263a'") = ☺
+       // "", invalid syntax
+       // "The string must be either double-quoted", <nil>
+       // "or backquoted.", <nil>
+       // "☺", <nil>
+       // "", invalid syntax
 }
 
 func ExampleUnquoteChar() {