tendermint/db/mem_db.go

45 lines
703 B
Go
Raw Normal View History

2014-05-23 17:49:28 -07:00
package db
import (
2014-07-01 14:50:24 -07:00
"fmt"
2014-05-23 17:49:28 -07:00
)
type MemDB struct {
2014-07-01 14:50:24 -07:00
db map[string][]byte
2014-05-23 17:49:28 -07:00
}
2014-07-01 14:50:24 -07:00
func NewMemDB() *MemDB {
database := &MemDB{db: make(map[string][]byte)}
return database
2014-05-23 17:49:28 -07:00
}
func (db *MemDB) Get(key []byte) []byte {
return db.db[string(key)]
}
2014-07-19 15:19:07 -07:00
func (db *MemDB) Set(key []byte, value []byte) {
2014-07-01 14:50:24 -07:00
db.db[string(key)] = value
2014-05-23 17:49:28 -07:00
}
func (db *MemDB) SetSync(key []byte, value []byte) {
db.db[string(key)] = value
2014-05-23 17:49:28 -07:00
}
func (db *MemDB) Delete(key []byte) {
2014-07-01 14:50:24 -07:00
delete(db.db, string(key))
2014-05-23 17:49:28 -07:00
}
func (db *MemDB) DeleteSync(key []byte) {
delete(db.db, string(key))
}
func (db *MemDB) Close() {
db = nil
}
2014-05-23 17:49:28 -07:00
func (db *MemDB) Print() {
2014-07-01 14:50:24 -07:00
for key, value := range db.db {
2014-10-06 21:28:49 -07:00
fmt.Printf("[%X]:\t[%X]\n", []byte(key), value)
2014-07-01 14:50:24 -07:00
}
2014-05-23 17:49:28 -07:00
}