aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorobscuren <geffobscura@gmail.com>2015-03-18 18:44:25 +0800
committerobscuren <geffobscura@gmail.com>2015-03-18 18:44:25 +0800
commit942980609fb8a36873689bd3bd0a15488f327d56 (patch)
treed9de01873dc04c4e4042cf1260fe180d01f259bb
parentcd52ef315cf4d65cfb5282f72d795849266e3ab5 (diff)
downloaddexon-942980609fb8a36873689bd3bd0a15488f327d56.tar.gz
dexon-942980609fb8a36873689bd3bd0a15488f327d56.tar.zst
dexon-942980609fb8a36873689bd3bd0a15488f327d56.zip
conversions
-rw-r--r--core/types/common.go4
-rw-r--r--tests/blocktest.go9
-rw-r--r--xeth/state.go6
-rw-r--r--xeth/types.go38
4 files changed, 30 insertions, 27 deletions
diff --git a/core/types/common.go b/core/types/common.go
index cb57ef053..ace9c2c4b 100644
--- a/core/types/common.go
+++ b/core/types/common.go
@@ -35,3 +35,7 @@ func (b *Bloom) SetBytes(d []byte) {
func (b Bloom) Big() *big.Int {
return common.Bytes2Big(b[:])
}
+
+func (b Bloom) Bytes() []byte {
+ return b[:]
+}
diff --git a/tests/blocktest.go b/tests/blocktest.go
index e4d001089..44b459c8d 100644
--- a/tests/blocktest.go
+++ b/tests/blocktest.go
@@ -13,7 +13,6 @@ import (
"strings"
"github.com/ethereum/go-ethereum/common"
- "github.com/ethereum/go-ethereum/core"
"github.com/ethereum/go-ethereum/core/types"
"github.com/ethereum/go-ethereum/rlp"
"github.com/ethereum/go-ethereum/state"
@@ -99,7 +98,7 @@ func LoadBlockTests(file string) (map[string]*BlockTest, error) {
// InsertPreState populates the given database with the genesis
// accounts defined by the test.
func (t *BlockTest) InsertPreState(db common.Database) error {
- statedb := state.New(nil, db)
+ statedb := state.New(common.Hash{}, db)
for addrString, acct := range t.preAccounts {
// XXX: is is worth it checking for errors here?
//addr, _ := hex.DecodeString(addrString)
@@ -120,7 +119,7 @@ func (t *BlockTest) InsertPreState(db common.Database) error {
// sync trie to disk
statedb.Sync()
- if !bytes.Equal(t.Genesis.Root().Bytes(), statedb.Root()) {
+ if t.Genesis.Root() != statedb.Root() {
return errors.New("computed state root does not match genesis block")
}
return nil
@@ -212,12 +211,12 @@ func mustConvertAddress(in string) common.Address {
return common.BytesToAddress(out)
}
-func mustConvertBloom(in string) core.Bloom {
+func mustConvertBloom(in string) types.Bloom {
out, err := hex.DecodeString(strings.TrimPrefix(in, "0x"))
if err != nil {
panic(fmt.Errorf("invalid hex: %q", in))
}
- return core.BytesToBloom(out)
+ return types.BytesToBloom(out)
}
func mustConvertBigInt10(in string) *big.Int {
diff --git a/xeth/state.go b/xeth/state.go
index 7d9ceab1b..f645a9cac 100644
--- a/xeth/state.go
+++ b/xeth/state.go
@@ -19,7 +19,7 @@ func (self *State) State() *state.StateDB {
}
func (self *State) Get(addr string) *Object {
- return &Object{self.state.GetStateObject(common.FromHex(addr))}
+ return &Object{self.state.GetStateObject(common.HexToAddress(addr))}
}
func (self *State) SafeGet(addr string) *Object {
@@ -27,9 +27,9 @@ func (self *State) SafeGet(addr string) *Object {
}
func (self *State) safeGet(addr string) *state.StateObject {
- object := self.state.GetStateObject(common.FromHex(addr))
+ object := self.state.GetStateObject(common.HexToAddress(addr))
if object == nil {
- object = state.NewStateObject(common.FromHex(addr), self.xeth.eth.StateDb())
+ object = state.NewStateObject(common.HexToAddress(addr), self.xeth.eth.StateDb())
}
return object
diff --git a/xeth/types.go b/xeth/types.go
index e15305481..d6d2a11f7 100644
--- a/xeth/types.go
+++ b/xeth/types.go
@@ -5,10 +5,10 @@ import (
"fmt"
"strings"
+ "github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/core"
"github.com/ethereum/go-ethereum/core/types"
"github.com/ethereum/go-ethereum/crypto"
- "github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/p2p"
"github.com/ethereum/go-ethereum/rlp"
"github.com/ethereum/go-ethereum/state"
@@ -59,19 +59,19 @@ func (self *Object) Storage() (storage map[string]string) {
type Block struct {
//Transactions string `json:"transactions"`
ref *types.Block
- Size string `json:"size"`
- Number int `json:"number"`
- Hash string `json:"hash"`
+ Size string `json:"size"`
+ Number int `json:"number"`
+ Hash string `json:"hash"`
Transactions *common.List `json:"transactions"`
Uncles *common.List `json:"uncles"`
- Time int64 `json:"time"`
- Coinbase string `json:"coinbase"`
- Name string `json:"name"`
- GasLimit string `json:"gasLimit"`
- GasUsed string `json:"gasUsed"`
- PrevHash string `json:"prevHash"`
- Bloom string `json:"bloom"`
- Raw string `json:"raw"`
+ Time int64 `json:"time"`
+ Coinbase string `json:"coinbase"`
+ Name string `json:"name"`
+ GasLimit string `json:"gasLimit"`
+ GasUsed string `json:"gasUsed"`
+ PrevHash string `json:"prevHash"`
+ Bloom string `json:"bloom"`
+ Raw string `json:"raw"`
}
// Creates a new QML Block from a chain block
@@ -95,12 +95,12 @@ func NewBlock(block *types.Block) *Block {
return &Block{
ref: block, Size: block.Size().String(),
Number: int(block.NumberU64()), GasUsed: block.GasUsed().String(),
- GasLimit: block.GasLimit().String(), Hash: toHex(block.Hash()),
+ GasLimit: block.GasLimit().String(), Hash: toHex(block.Hash().Bytes()),
Transactions: txlist, Uncles: ulist,
Time: block.Time(),
- Coinbase: toHex(block.Coinbase()),
- PrevHash: toHex(block.ParentHash()),
- Bloom: toHex(block.Bloom()),
+ Coinbase: toHex(block.Coinbase().Bytes()),
+ PrevHash: toHex(block.ParentHash().Bytes()),
+ Bloom: toHex(block.Bloom().Bytes()),
Raw: block.String(),
}
}
@@ -114,7 +114,7 @@ func (self *Block) ToString() string {
}
func (self *Block) GetTransaction(hash string) *Transaction {
- tx := self.ref.Transaction(common.FromHex(hash))
+ tx := self.ref.Transaction(common.HexToHash(hash))
if tx == nil {
return nil
}
@@ -139,8 +139,8 @@ type Transaction struct {
}
func NewTx(tx *types.Transaction) *Transaction {
- hash := toHex(tx.Hash())
- receiver := toHex(tx.To())
+ hash := tx.Hash().Hex()
+ receiver := tx.To().Hex()
if len(receiver) == 0 {
receiver = toHex(core.AddressFromMessage(tx))
}