diff options
author | obscuren <obscuren@obscura.com> | 2014-01-01 10:07:04 +0800 |
---|---|---|
committer | obscuren <obscuren@obscura.com> | 2014-01-01 10:07:04 +0800 |
commit | 79eaa6f2bae8c8354807a9b32b889295b0de4b6a (patch) | |
tree | c45fc7e9a96e386e6d4bdcbfc04d230a5c5a35eb | |
parent | 34d62c380ef6327c170639af6221a82610efa25c (diff) | |
download | dexon-79eaa6f2bae8c8354807a9b32b889295b0de4b6a.tar dexon-79eaa6f2bae8c8354807a9b32b889295b0de4b6a.tar.gz dexon-79eaa6f2bae8c8354807a9b32b889295b0de4b6a.tar.bz2 dexon-79eaa6f2bae8c8354807a9b32b889295b0de4b6a.tar.lz dexon-79eaa6f2bae8c8354807a9b32b889295b0de4b6a.tar.xz dexon-79eaa6f2bae8c8354807a9b32b889295b0de4b6a.tar.zst dexon-79eaa6f2bae8c8354807a9b32b889295b0de4b6a.zip |
Removed old serialization
-rw-r--r-- | serialization.go | 63 | ||||
-rw-r--r-- | serialization_test.go | 20 |
2 files changed, 0 insertions, 83 deletions
diff --git a/serialization.go b/serialization.go deleted file mode 100644 index 5a92a434f..000000000 --- a/serialization.go +++ /dev/null @@ -1,63 +0,0 @@ -package main - -import ( - "math" - "bytes" -) - -func ToBinary(x int, bytes int) string { - if bytes == 0 { - return "" - } else { - return ToBinary(int(x / 256), bytes - 1) + string(x % 256) - } -} - -func NumToVarInt(x int) string { - if x < 253 { - return string(x) - } else if x < int(math.Pow(2,16)) { - return string(253) + ToBinary(x, 2) - } else if x < int(math.Pow(2,32)) { - return string(253) + ToBinary(x, 4) - } else { - return string(253) + ToBinary(x, 8) - } -} - -func RlpEncode(object interface{}) string { - if str, ok := object.(string); ok { - return "\x00" + NumToVarInt(len(str)) + str - } else if num, ok := object.(uint32); ok { - return RlpEncode(Uitoa(num)) - } else if byt, ok := object.([]byte); ok { - return RlpEncode(string(byt)) - } else if slice, ok := object.([]interface{}); ok { - var buffer bytes.Buffer - for _, val := range slice { - if v, ok := val.(string); ok { - buffer.WriteString(RlpEncode(v)) - } else { - buffer.WriteString(RlpEncode(val)) - } - } - - return "\x01" + RlpEncode(len(buffer.String())) + buffer.String() - } else if slice, ok := object.([]string); ok { - - // FIXME this isn't dry. Fix this - var buffer bytes.Buffer - for _, val := range slice { - buffer.WriteString(RlpEncode(val)) - } - return "\x01" + RlpEncode(len(buffer.String())) + buffer.String() - } - - return "" -} - -type RlpSerializer interface { - MarshalRlp() []byte - UnmarshalRlp([]byte) -} - diff --git a/serialization_test.go b/serialization_test.go deleted file mode 100644 index adb1b6e2d..000000000 --- a/serialization_test.go +++ /dev/null @@ -1,20 +0,0 @@ -package main - -import ( - "testing" - "fmt" -) - -func TestRlpEncode(t *testing.T) { - strRes := "\x00\x03dog" - str := RlpEncode("dog") - if str != strRes { - t.Error(fmt.Sprintf("Expected %q, got %q", strRes, str)) - } - - sliceRes := "\x01\x00\x03dog\x00\x03god\x00\x03cat" - slice := RlpEncode([]string{"dog", "god", "cat"}) - if slice != sliceRes { - t.Error(fmt.Sprintf("Expected %q, got %q", sliceRes, slice)) - } -} |