go-ethereum/tests/helper/trie.go

32 lines
736 B
Go
Raw Normal View History

2014-10-14 17:41:00 -05:00
package helper
import "github.com/ethereum/eth-go/ethtrie"
type MemDatabase struct {
db map[string][]byte
}
func NewMemDatabase() (*MemDatabase, error) {
db := &MemDatabase{db: make(map[string][]byte)}
return db, nil
}
func (db *MemDatabase) Put(key []byte, value []byte) {
db.db[string(key)] = value
}
func (db *MemDatabase) Get(key []byte) ([]byte, error) {
return db.db[string(key)], nil
}
func (db *MemDatabase) Delete(key []byte) error {
delete(db.db, string(key))
return nil
}
func (db *MemDatabase) Print() {}
func (db *MemDatabase) Close() {}
func (db *MemDatabase) LastKnownTD() []byte { return nil }
func NewTrie() *ethtrie.Trie {
db, _ := NewMemDatabase()
return ethtrie.New(db, "")
}