diff options
author | obscuren <geffobscura@gmail.com> | 2015-03-16 23:28:16 +0800 |
---|---|---|
committer | obscuren <geffobscura@gmail.com> | 2015-03-16 23:28:16 +0800 |
commit | d338650089d7a01983c3a853d2f917243c4de064 (patch) | |
tree | 6c7852e9e75c4ba1ff476f4c77e25adfae135e35 /trie/secure_trie.go | |
parent | 20b7162a6206e61a39d799a5adf84379c9c8c818 (diff) | |
download | dexon-d338650089d7a01983c3a853d2f917243c4de064.tar dexon-d338650089d7a01983c3a853d2f917243c4de064.tar.gz dexon-d338650089d7a01983c3a853d2f917243c4de064.tar.bz2 dexon-d338650089d7a01983c3a853d2f917243c4de064.tar.lz dexon-d338650089d7a01983c3a853d2f917243c4de064.tar.xz dexon-d338650089d7a01983c3a853d2f917243c4de064.tar.zst dexon-d338650089d7a01983c3a853d2f917243c4de064.zip |
compilable trie (tests fail)
Diffstat (limited to 'trie/secure_trie.go')
-rw-r--r-- | trie/secure_trie.go | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/trie/secure_trie.go b/trie/secure_trie.go index b9fa376b8..b31791cad 100644 --- a/trie/secure_trie.go +++ b/trie/secure_trie.go @@ -1,34 +1,38 @@ package trie -import "github.com/ethereum/go-ethereum/crypto" +import ( + "github.com/ethereum/go-ethereum/common" + "github.com/ethereum/go-ethereum/crypto" +) type SecureTrie struct { *Trie } -func NewSecure(root []byte, backend Backend) *SecureTrie { +func NewSecure(root common.Hash, backend Backend) *SecureTrie { return &SecureTrie{New(root, backend)} } -func (self *SecureTrie) Update(key, value []byte) Node { - return self.Trie.Update(crypto.Sha3(key), value) +func (self *SecureTrie) Update(key common.Hash, value []byte) Node { + return self.Trie.Update(common.BytesToHash(crypto.Sha3(key[:])), value) } + func (self *SecureTrie) UpdateString(key, value string) Node { - return self.Update([]byte(key), []byte(value)) + return self.Update(common.StringToHash(key), []byte(value)) } -func (self *SecureTrie) Get(key []byte) []byte { - return self.Trie.Get(crypto.Sha3(key)) +func (self *SecureTrie) Get(key common.Hash) []byte { + return self.Trie.Get(common.BytesToHash(crypto.Sha3(key[:]))) } func (self *SecureTrie) GetString(key string) []byte { - return self.Get([]byte(key)) + return self.Get(common.StringToHash(key)) } -func (self *SecureTrie) Delete(key []byte) Node { - return self.Trie.Delete(crypto.Sha3(key)) +func (self *SecureTrie) Delete(key common.Hash) Node { + return self.Trie.Delete(common.BytesToHash(crypto.Sha3(key[:]))) } func (self *SecureTrie) DeleteString(key string) Node { - return self.Delete([]byte(key)) + return self.Delete(common.StringToHash(key)) } func (self *SecureTrie) Copy() *SecureTrie { |