From a2501ecfcd0709db8bd43ecdc4077d072230fb28 Mon Sep 17 00:00:00 2001
From: Taylor Gerring <taylor.gerring@gmail.com>
Date: Tue, 31 Mar 2015 19:02:46 +0200
Subject: Make new types Stringers

---
 rpc/messages.go | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

(limited to 'rpc')

diff --git a/rpc/messages.go b/rpc/messages.go
index 108a07ed8..1ad41654b 100644
--- a/rpc/messages.go
+++ b/rpc/messages.go
@@ -29,9 +29,12 @@ type hexdata struct {
 	data []byte
 }
 
+func (d *hexdata) String() string {
+	return "0x" + common.Bytes2Hex(d.data)
+}
+
 func (d *hexdata) MarshalJSON() ([]byte, error) {
-	v := common.Bytes2Hex(d.data)
-	return json.Marshal("0x" + v)
+	return json.Marshal(d.String())
 }
 
 func (d *hexdata) UnmarshalJSON(b []byte) (err error) {
@@ -72,7 +75,7 @@ type hexnum struct {
 	data []byte
 }
 
-func (d *hexnum) MarshalJSON() ([]byte, error) {
+func (d *hexnum) String() string {
 	// Get hex string from bytes
 	out := common.Bytes2Hex(d.data)
 	// Trim leading 0s
@@ -81,7 +84,11 @@ func (d *hexnum) MarshalJSON() ([]byte, error) {
 	if len(out) == 0 {
 		out = "0"
 	}
-	return json.Marshal("0x" + out)
+	return "0x" + out
+}
+
+func (d *hexnum) MarshalJSON() ([]byte, error) {
+	return json.Marshal(d.String())
 }
 
 func (d *hexnum) UnmarshalJSON(b []byte) (err error) {
-- 
cgit v1.2.3