| // 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) |
| } |