Documentation
¶
Overview ¶
Package memorydb implements the key-value database layer based on memory maps.
Index ¶
- type Database
- func (db *Database) Close() error
- func (db *Database) Compact(start []byte, limit []byte) error
- func (db *Database) Delete(key []byte) error
- func (db *Database) Get(key []byte) ([]byte, error)
- func (db *Database) Has(key []byte) (bool, error)
- func (db *Database) Len() int
- func (db *Database) NewBatch() ethdb.Batch
- func (db *Database) NewBatchWithSize(size int) ethdb.Batch
- func (db *Database) NewIterator(prefix []byte, start []byte) ethdb.Iterator
- func (db *Database) NewSnapshot() (ethdb.Snapshot, error)
- func (db *Database) Put(key []byte, value []byte) error
- func (db *Database) Stat(property string) (string, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Database ¶
type Database struct {
// contains filtered or unexported fields
}
Database is an ephemeral key-value store. Apart from basic data storage functionality it also supports batch writes and iterating over the keyspace in binary-alphabetical order.
func New ¶
func New() *Database
New returns a wrapped map with all the required database interface methods implemented.
func NewWithCap ¶
NewWithCap returns a wrapped map pre-allocated to the provided capacity with all the required database interface methods implemented.
func (*Database) Close ¶
Close deallocates the internal map and ensures any consecutive data access op fails with an error.
func (*Database) Compact ¶
Compact is not supported on a memory database, but there's no need either as a memory database doesn't waste space anyway.