remove now unused trie helpers

This commit is contained in:
i-norden 2023-03-14 10:07:55 -05:00
parent 85ee920c8b
commit 7574909281
3 changed files with 1 additions and 50 deletions

View File

@ -69,7 +69,6 @@ type Receipt struct {
BlockHash common.Hash `json:"blockHash,omitempty"` BlockHash common.Hash `json:"blockHash,omitempty"`
BlockNumber *big.Int `json:"blockNumber,omitempty"` BlockNumber *big.Int `json:"blockNumber,omitempty"`
TransactionIndex uint `json:"transactionIndex"` TransactionIndex uint `json:"transactionIndex"`
LogRoot common.Hash `json:"logRoot"`
} }
type receiptMarshaling struct { type receiptMarshaling struct {

View File

@ -62,5 +62,5 @@ func Keccak256ToCid(codec uint64, h []byte) cid.Cid {
panic(err) panic(err)
} }
return cid.NewCidV1(codec, mh.Multihash(buf)) return cid.NewCidV1(codec, buf)
} }

View File

@ -20,60 +20,12 @@
package trie_helpers package trie_helpers
import ( import (
"fmt"
"sort" "sort"
"strings" "strings"
"github.com/ethereum/go-ethereum/rlp"
"github.com/ethereum/go-ethereum/statediff/types" "github.com/ethereum/go-ethereum/statediff/types"
"github.com/ethereum/go-ethereum/trie"
) )
// CheckKeyType checks what type of key we have
func CheckKeyType(elements []interface{}) (types.NodeType, error) {
if len(elements) > 2 {
return types.Branch, nil
}
if len(elements) < 2 {
return types.Unknown, fmt.Errorf("node cannot be less than two elements in length")
}
switch elements[0].([]byte)[0] / 16 {
case '\x00':
return types.Extension, nil
case '\x01':
return types.Extension, nil
case '\x02':
return types.Leaf, nil
case '\x03':
return types.Leaf, nil
default:
return types.Unknown, fmt.Errorf("unknown hex prefix")
}
}
// ResolveNode return the state diff node pointed by the iterator.
func ResolveNode(it trie.NodeIterator, trieDB *trie.Database) (types.StateNode, []interface{}, error) {
nodePath := make([]byte, len(it.Path()))
copy(nodePath, it.Path())
node, err := trieDB.Node(it.Hash())
if err != nil {
return types.StateNode{}, nil, err
}
var nodeElements []interface{}
if err = rlp.DecodeBytes(node, &nodeElements); err != nil {
return types.StateNode{}, nil, err
}
ty, err := CheckKeyType(nodeElements)
if err != nil {
return types.StateNode{}, nil, err
}
return types.StateNode{
NodeType: ty,
Path: nodePath,
NodeValue: node,
}, nodeElements, nil
}
// SortKeys sorts the keys in the account map // SortKeys sorts the keys in the account map
func SortKeys(data types.AccountMap) []string { func SortKeys(data types.AccountMap) []string {
keys := make([]string, 0, len(data)) keys := make([]string, 0, len(data))