1 // Copyright 2010 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file.
29 func (v TI) String() string { return Sprintf("I: %d", int(v)) }
30 func (v TI8) String() string { return Sprintf("I8: %d", int8(v)) }
31 func (v TI16) String() string { return Sprintf("I16: %d", int16(v)) }
32 func (v TI32) String() string { return Sprintf("I32: %d", int32(v)) }
33 func (v TI64) String() string { return Sprintf("I64: %d", int64(v)) }
34 func (v TU) String() string { return Sprintf("U: %d", uint(v)) }
35 func (v TU8) String() string { return Sprintf("U8: %d", uint8(v)) }
36 func (v TU16) String() string { return Sprintf("U16: %d", uint16(v)) }
37 func (v TU32) String() string { return Sprintf("U32: %d", uint32(v)) }
38 func (v TU64) String() string { return Sprintf("U64: %d", uint64(v)) }
39 func (v TUI) String() string { return Sprintf("UI: %d", uintptr(v)) }
40 func (v TF) String() string { return Sprintf("F: %f", float64(v)) }
41 func (v TF32) String() string { return Sprintf("F32: %f", float32(v)) }
42 func (v TF64) String() string { return Sprintf("F64: %f", float64(v)) }
43 func (v TB) String() string { return Sprintf("B: %t", bool(v)) }
44 func (v TS) String() string { return Sprintf("S: %q", string(v)) }
46 func check(t *testing.T, got, want string) {
48 t.Error(got, "!=", want)
52 func TestStringer(t *testing.T) {
53 s := Sprintf("%v %v %v %v %v", TI(0), TI8(1), TI16(2), TI32(3), TI64(4))
54 check(t, s, "I: 0 I8: 1 I16: 2 I32: 3 I64: 4")
55 s = Sprintf("%v %v %v %v %v %v", TU(5), TU8(6), TU16(7), TU32(8), TU64(9), TUI(10))
56 check(t, s, "U: 5 U8: 6 U16: 7 U32: 8 U64: 9 UI: 10")
57 s = Sprintf("%v %v %v", TF(1.0), TF32(2.0), TF64(3.0))
58 check(t, s, "F: 1.000000 F32: 2.000000 F64: 3.000000")
59 s = Sprintf("%v %v", TB(true), TS("x"))
60 check(t, s, "B: true S: \"x\"")