From: ianzapolsky Date: Thu, 30 Aug 2018 18:57:16 +0000 (-0600) Subject: fmt: add an example for Errorf X-Git-Tag: go1.12beta1~1211 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=d5c7abf73a3f65cb7d5b9c3193e59ac9e0729c7a;p=gostls13.git fmt: add an example for Errorf The errors package has an example for Errorf, but the fmt package does not. Copy the Errorf example from errors to fmt. Move existing Stringer example into separate file, so as not to break the assumption that the entire file will be presented as the example. Change-Id: I8a210a69362017fa08615a8c3feccdeee8427e22 Reviewed-on: https://go-review.googlesource.com/132239 Reviewed-by: Brad Fitzpatrick --- diff --git a/src/fmt/example_test.go b/src/fmt/example_test.go index 2d17fc69c7..5797e48080 100644 --- a/src/fmt/example_test.go +++ b/src/fmt/example_test.go @@ -8,24 +8,13 @@ import ( "fmt" ) -// Animal has a Name and an Age to represent an animal. -type Animal struct { - Name string - Age uint -} - -// String makes Animal satisfy the Stringer interface. -func (a Animal) String() string { - return fmt.Sprintf("%v (%d)", a.Name, a.Age) -} - -func ExampleStringer() { - a := Animal{ - Name: "Gopher", - Age: 2, - } - fmt.Println(a) - // Output: Gopher (2) +// The Errorf function lets us use formatting features +// to create descriptive error messages. +func ExampleErrorf() { + const name, id = "bueller", 17 + err := fmt.Errorf("user %q (id %d) not found", name, id) + fmt.Println(err.Error()) + // Output: user "bueller" (id 17) not found } func ExampleSprintf() { diff --git a/src/fmt/stringer_example_test.go b/src/fmt/stringer_example_test.go new file mode 100644 index 0000000000..c77e78809c --- /dev/null +++ b/src/fmt/stringer_example_test.go @@ -0,0 +1,29 @@ +// Copyright 2017 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package fmt_test + +import ( + "fmt" +) + +// Animal has a Name and an Age to represent an animal. +type Animal struct { + Name string + Age uint +} + +// String makes Animal satisfy the Stringer interface. +func (a Animal) String() string { + return fmt.Sprintf("%v (%d)", a.Name, a.Age) +} + +func ExampleStringer() { + a := Animal{ + Name: "Gopher", + Age: 2, + } + fmt.Println(a) + // Output: Gopher (2) +}