mirror of https://github.com/ethereum/go-ethereum
parent
558c67d392
commit
3f6baa45a7
@ -0,0 +1 @@ |
||||
var contract = web3.eth.contractFromAbi([{"constant":false,"inputs":[{"name":"_h","type":"hash256"}],"name":"confirm","outputs":[],"type":"function"},{"constant":false,"inputs":[{"name":_to","type":"address"},{"name":"_value","type":"uint256"},{"name":"_data","type":"bytes"}],"name":"execute","outputs":[{"name":"_r","type":"hash256"}],"type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"}],"name":"kill","outputs":[],"type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"}],"name":"changeOwner","outputs":[],"type":"function"},{"inputs":[{"indexed":false,"name":"value","type":"uint256"}],"name":"CashIn","type":"event"},{"inputs":[{"indexed":true,"name":"out","type":"string32"},{"indexed":false,"name":"owner","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"to","type":"address"}],"name":"SingleTransact","type":"event"},{"inputs":[{"indexed":true,"name":"out","type":"string32"},{"indexed":false,"name":"owner","type":"address"},{"indexed":false,"name":"operation","type":"hash256"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"to","type":"address"}],"name":"MultiTransact","type":"event"}]); |
@ -1,61 +0,0 @@ |
||||
package state |
||||
|
||||
import ( |
||||
"fmt" |
||||
"math/big" |
||||
) |
||||
|
||||
// Object manifest
|
||||
//
|
||||
// The object manifest is used to keep changes to the state so we can keep track of the changes
|
||||
// that occurred during a state transitioning phase.
|
||||
type Manifest struct { |
||||
Messages Messages |
||||
} |
||||
|
||||
func NewManifest() *Manifest { |
||||
m := &Manifest{} |
||||
m.Reset() |
||||
|
||||
return m |
||||
} |
||||
|
||||
func (m *Manifest) Reset() { |
||||
m.Messages = nil |
||||
} |
||||
|
||||
func (self *Manifest) AddMessage(msg *Message) *Message { |
||||
self.Messages = append(self.Messages, msg) |
||||
|
||||
return msg |
||||
} |
||||
|
||||
func (self *Manifest) SetHash(hash []byte) { |
||||
for _, message := range self.Messages { |
||||
message.Block = hash |
||||
} |
||||
} |
||||
|
||||
type Messages []*Message |
||||
type Message struct { |
||||
To, From []byte |
||||
Input []byte |
||||
Output []byte |
||||
Path int |
||||
Origin []byte |
||||
Timestamp int64 |
||||
Coinbase []byte |
||||
Block []byte |
||||
Number *big.Int |
||||
Value *big.Int |
||||
|
||||
ChangedAddresses [][]byte |
||||
} |
||||
|
||||
func (self *Message) AddStorageChange(addr []byte) { |
||||
self.ChangedAddresses = append(self.ChangedAddresses, addr) |
||||
} |
||||
|
||||
func (self *Message) String() string { |
||||
return fmt.Sprintf("Message{to: %x from: %x input: %x output: %x origin: %x coinbase: %x block: %x number: %v timestamp: %d path: %d value: %v", self.To, self.From, self.Input, self.Output, self.Origin, self.Coinbase, self.Block, self.Number, self.Timestamp, self.Path, self.Value) |
||||
} |
Loading…
Reference in new issue