diff options
author | obscuren <geffobscura@gmail.com> | 2014-10-31 21:43:14 +0800 |
---|---|---|
committer | obscuren <geffobscura@gmail.com> | 2014-10-31 21:43:14 +0800 |
commit | af8f5f0b69f1c359991d12c7708804fe8dd1f944 (patch) | |
tree | dd3d5bea8d57037a2d32fae86c4ba7fcc9161b16 /ethstate/dump.go | |
parent | 0ed1a8b50a9b9726cd57a2731d0405f6949c6188 (diff) | |
download | go-tangerine-af8f5f0b69f1c359991d12c7708804fe8dd1f944.tar go-tangerine-af8f5f0b69f1c359991d12c7708804fe8dd1f944.tar.gz go-tangerine-af8f5f0b69f1c359991d12c7708804fe8dd1f944.tar.bz2 go-tangerine-af8f5f0b69f1c359991d12c7708804fe8dd1f944.tar.lz go-tangerine-af8f5f0b69f1c359991d12c7708804fe8dd1f944.tar.xz go-tangerine-af8f5f0b69f1c359991d12c7708804fe8dd1f944.tar.zst go-tangerine-af8f5f0b69f1c359991d12c7708804fe8dd1f944.zip |
ethstate => state
Diffstat (limited to 'ethstate/dump.go')
-rw-r--r-- | ethstate/dump.go | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/ethstate/dump.go b/ethstate/dump.go deleted file mode 100644 index fd92ac4df..000000000 --- a/ethstate/dump.go +++ /dev/null @@ -1,47 +0,0 @@ -package ethstate - -import ( - "encoding/json" - "fmt" - - "github.com/ethereum/go-ethereum/ethutil" -) - -type Account struct { - Balance string `json:"balance"` - Nonce uint64 `json:"nonce"` - CodeHash string `json:"codeHash"` - Storage map[string]string `json:"storage"` -} - -type World struct { - Root string `json:"root"` - Accounts map[string]Account `json:"accounts"` -} - -func (self *State) Dump() []byte { - world := World{ - Root: ethutil.Bytes2Hex(self.Trie.Root.([]byte)), - Accounts: make(map[string]Account), - } - - self.Trie.NewIterator().Each(func(key string, value *ethutil.Value) { - stateObject := NewStateObjectFromBytes([]byte(key), value.Bytes()) - - account := Account{Balance: stateObject.balance.String(), Nonce: stateObject.Nonce, CodeHash: ethutil.Bytes2Hex(stateObject.codeHash)} - account.Storage = make(map[string]string) - - stateObject.EachStorage(func(key string, value *ethutil.Value) { - value.Decode() - account.Storage[ethutil.Bytes2Hex([]byte(key))] = ethutil.Bytes2Hex(value.Bytes()) - }) - world.Accounts[ethutil.Bytes2Hex([]byte(key))] = account - }) - - json, err := json.MarshalIndent(world, "", " ") - if err != nil { - fmt.Println("dump err", err) - } - - return json -} |