Преглед изворни кода

Modify printInt and printUint to accept base.

This paves the way to improve how byte arrays are output as well as
increases the flexibily of the functions.
Dave Collins пре 12 година
родитељ
комит
471552e81e
3 измењених фајлова са 8 додато и 8 уклоњено
  1. 4 4
      spew/common.go
  2. 2 2
      spew/dump.go
  3. 2 2
      spew/format.go

+ 4 - 4
spew/common.go

@@ -186,13 +186,13 @@ func printBool(w io.Writer, val bool) {
 }
 
 // printInt outputs a signed integer value to Writer w.
-func printInt(w io.Writer, val int64) {
-	w.Write([]byte(strconv.FormatInt(val, 10)))
+func printInt(w io.Writer, val int64, base int) {
+	w.Write([]byte(strconv.FormatInt(val, base)))
 }
 
 // printUint outputs an unsigned integer value to Writer w.
-func printUint(w io.Writer, val uint64) {
-	w.Write([]byte(strconv.FormatUint(val, 10)))
+func printUint(w io.Writer, val uint64, base int) {
+	w.Write([]byte(strconv.FormatUint(val, base)))
 }
 
 // printFloat outputs a floating point value using the specified precision,

+ 2 - 2
spew/dump.go

@@ -182,10 +182,10 @@ func (d *dumpState) dump(v reflect.Value) {
 		printBool(d.w, v.Bool())
 
 	case reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, reflect.Int:
-		printInt(d.w, v.Int())
+		printInt(d.w, v.Int(), 10)
 
 	case reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uint:
-		printUint(d.w, v.Uint())
+		printUint(d.w, v.Uint(), 10)
 
 	case reflect.Float32:
 		printFloat(d.w, v.Float(), 32)

+ 2 - 2
spew/format.go

@@ -237,10 +237,10 @@ func (f *formatState) format(v reflect.Value) {
 		printBool(f.fs, v.Bool())
 
 	case reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, reflect.Int:
-		printInt(f.fs, v.Int())
+		printInt(f.fs, v.Int(), 10)
 
 	case reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uint:
-		printUint(f.fs, v.Uint())
+		printUint(f.fs, v.Uint(), 10)
 
 	case reflect.Float32:
 		printFloat(f.fs, v.Float(), 32)