|
|
|
@ -121,26 +121,6 @@ func (self *StateObject) SetState(k []byte, value *ethutil.Value) { |
|
|
|
|
self.storage[string(key)] = value.Copy() |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/* |
|
|
|
|
// Iterate over each storage address and yield callback
|
|
|
|
|
func (self *StateObject) EachStorage(cb trie.EachCallback) { |
|
|
|
|
// First loop over the uncommit/cached values in storage
|
|
|
|
|
for key, value := range self.storage { |
|
|
|
|
// XXX Most iterators Fns as it stands require encoded values
|
|
|
|
|
encoded := ethutil.NewValue(value.Encode()) |
|
|
|
|
cb(key, encoded) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
it := self.State.Trie.NewIterator() |
|
|
|
|
it.Each(func(key string, value *ethutil.Value) { |
|
|
|
|
// If it's cached don't call the callback.
|
|
|
|
|
if self.storage[key] == nil { |
|
|
|
|
cb(key, value) |
|
|
|
|
} |
|
|
|
|
}) |
|
|
|
|
} |
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
func (self *StateObject) Sync() { |
|
|
|
|
for key, value := range self.storage { |
|
|
|
|
if value.Len() == 0 { |
|
|
|
@ -150,15 +130,6 @@ func (self *StateObject) Sync() { |
|
|
|
|
|
|
|
|
|
self.setAddr([]byte(key), value) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/* |
|
|
|
|
valid, t2 := trie.ParanoiaCheck(self.State.trie, ethutil.Config.Db) |
|
|
|
|
if !valid { |
|
|
|
|
statelogger.Infof("Warn: PARANOIA: Different state storage root during copy %x vs %x\n", self.State.Root(), t2.Root()) |
|
|
|
|
|
|
|
|
|
self.State.trie = t2 |
|
|
|
|
} |
|
|
|
|
*/ |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func (c *StateObject) GetInstr(pc *big.Int) *ethutil.Value { |
|
|
|
|