reflect: add example for StructTag

Fix a few minor vet quibbles while I'm here.

R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/13235059
This commit is contained in:
Kamil Kisiel 2013-09-23 13:19:08 -04:00 committed by Russ Cox
parent 60513bf2f4
commit e07b5baf4f
2 changed files with 17 additions and 3 deletions

View File

@ -948,7 +948,7 @@ func TestMap(t *testing.T) {
newm := newmap.Interface().(map[string]int)
if len(newm) != len(m) {
t.Errorf("length after copy: newm=%d, m=%d", newm, m)
t.Errorf("length after copy: newm=%d, m=%d", len(newm), len(m))
}
for k, v := range newm {
@ -3478,7 +3478,7 @@ func TestAllocsInterfaceBig(t *testing.T) {
}
v := ValueOf(S{})
if allocs := testing.AllocsPerRun(100, func() { v.Interface() }); allocs > 0 {
t.Errorf("allocs:", allocs)
t.Error("allocs:", allocs)
}
}
@ -3495,7 +3495,7 @@ func TestAllocsInterfaceSmall(t *testing.T) {
}
v := ValueOf(int64(0))
if allocs := testing.AllocsPerRun(100, func() { v.Interface() }); allocs > 0 {
t.Errorf("allocs:", allocs)
t.Error("allocs:", allocs)
}
}

View File

@ -50,3 +50,17 @@ func ExampleMakeFunc() {
// 1 0
// 3.14 2.72
}
func ExampleStructTag() {
type S struct {
F string `species:"gopher" color:"blue"`
}
s := S{}
st := reflect.TypeOf(s)
field := st.Field(0)
fmt.Println(field.Tag.Get("color"), field.Tag.Get("species"))
// Output:
// blue gopher
}